模拟 Windows 安装程序
Posted
技术标签:
【中文标题】模拟 Windows 安装程序【英文标题】:Mocking Windows Installer 【发布时间】:2011-11-29 21:36:57 【问题描述】:是否可以?我想在安装过程中为各种场景设置测试。我并不关心 Windows Installer 数据库中存储了什么,我只想测试安装程序包的输出(哪些文件已更改等)。
编辑
我想我可以设置 VMWare 映像并编写脚本。有人知道如何在 VMWare 实例中编写脚本/自动化任务吗?
【问题讨论】:
您可以尝试使用 PowerCLi 自动执行 VMware 相关任务 您是否只想知道 msi 数据库中有哪些文件?有更简单的方法来检查!例如创建一个管理点 (msiexec /a) 或使用 orca 或 insted 打开它 【参考方案1】:是的,这是可能的。你需要两件事:
-
可以生成包的设置创作工具。命令行界面或可编写脚本的解决方案非常适合自动化。
一个资源监视器,用于确定每个安装的作用。您可以使用Process Monitor 或其他监控文件和注册表的工具。
作为一个可选功能,我还建议使用日志解析器。这样,您可以为每次安装 create a verbose log 并分析日志以查看它对目标计算机所做的操作。
【讨论】:
我可以分析日志,但这很难,而且不能证明未来。如果他们更改日志文件格式怎么办?另外,我想恢复安装(完全回滚)或模拟(我的软件)来使用 Windows Installer 的操作。 我怀疑日志格式会改变,自 Windows Installer 2.0 以来的 10 年里它并没有太大变化。关于卸载,很容易通过 msiexec 命令行触发。无法使用安装程序操作。他们要么跑步做某事,要么不做。【参考方案2】:没有办法模拟 MSI。您要么相信它可以工作并评估 MSI 中的数据以预测会发生什么,要么您使用基础设施自动化来启动机器并执行安装程序,然后运行测试以确认预期的行为。
【讨论】:
以上是关于模拟 Windows 安装程序的主要内容,如果未能解决你的问题,请参考以下文章