InstallShield:如何测试单个自定义操作?

时间:2012-03-22 15:13:03

标签: installshield installscript

(我正在使用InstallShield2012 V.18)

在setup.rul中,我为每个 prototype 声明定义了一个函数,包含带有函数定义的文件并成功编译(InstallShield compile)。

现在我想测试这个功能(仅限)。 我不想运行整个安装,甚至不测试(Ctrl-T),因为我想避免完全重新构建,这需要花费太长时间才能完成。

有没有办法只测试InstallShield或每个命令行中的自定义函数?

2 个答案:

答案 0 :(得分:2)

虽然我可以给你一些提示,但并不是真的。

  1. 使用DEVONLY的发布标志创建一个虚拟功能。
  2. 为该功能创建虚拟组件。
  3. 创建一个ProductConfiguration,构建一个没有EXE且发布标志为DEVONLY的MSI。
  4. 构建此生产配置将非常快。我的笔记本电脑上有几秒钟的SSD。如果您需要某些组件以便为CA设置测试环境,则可以通过使用发布标志选择性地包含其他功能。

    另一个策略是在测试工具项目中开发您的CA,然后在您知道它完成后将代码移植到真实的安装程序中。

答案 1 :(得分:0)

克里斯托弗,谢谢你的快速回复。 我必须在这里提出我的答案,因为评论受到限制,因为时间过长。

我也考虑过使用这样的解决方法但是如果可能的话首先要避免使用它。 但好吧,现在我尝试了这些步骤,1和2没有问题,但是3:InstallShield不允许我在我的.ism文件中配置没有Setup.exe的产品配置(虽然我们有IS2012 Pro)。

然后我尝试在基本的MSI项目中做到这一点(这是你的意思吗?),这真的是在很短的时间内构建的。现在我可以在Test Release期间看到我的脚本,是的:-)

现在将我的脚本“移植”到主要主题我错过了.rul文件的导出功能,因为它存在于自定义操作中,但只有一个导入。因此,我必须在ism文件之间切换时进行复制粘贴,但没关系。