如何自动化安装程序测试

Jef*_*eff 9 virtualization installer automated-tests unit-testing

我想知道是否有人有任何最佳实践可以在具有可能不同的硬件/软件配置文件的各种机器上自动测试安装程序,并为安装程序指定各种选项.我的想法是,我可以编写"单元测试"代码来设置机器,运行安装程序,然后测试某些事情是否属实.测试可能类似于:

Test:
    Boot Machine without IIS
    Run Installer
    Assert Installer Had Errors

Test:
    Boot Machine with IIS
    Run Installer
    Assert Installer Ran

Test_Fixture:
    SetUp:
        Boot Machine with IIS

    Test:
        Run Installer without IIS install
        Assert Website Not Installed

    Test:
        Run Installer with IIS install
        Assert Website Installed
Run Code Online (Sandbox Code Playgroud)

我知道我可以创建大量的虚拟机,但等待虚拟机为每个功能测试启动听起来比我想要的工作更多.我真正想要的是一种虚拟化安装程序环境的方法.有什么建议?

Lan*_*eSc 5

我们创建了一组虚拟机,发现它很容易管理.我们为13个不同的Windows安装程序运行测试过夜.我们创建了非常简单的虚拟机,因此可以并行运行多个测试.

  • 我们的设置是一台计算机驱动一系列VMWare映像.此计算机使用VMWare的VIX API来启动,停止和还原映像.使用VIX API运行映像后,您将向VMWare映像发送命令行参数以开始安装.我们的安装必须能够在没有用户界面的情况下运行,因此我们可以在命令行上传递所有参数.然后我们检查文件并运行基本测试.如果出现问题,我们会执行记录安装.完成测试后,我们只需还原图像.在发布之前,我们仍然有一个人的外观测试他们的适合和完成. (2认同)