在真实硬件上进行自动化软件测试

Tor*_*enJ 5 automation windows deployment automated-testing

我目前正在工作的一个小型测试农场工作,尤其是在运行测试后重置机器的部分让我有些头疼。
在我们决定获得几台具有不同硬件配置的专用测试机器之前,计划是在一台使用 Hyper-V 的机器上运行测试,因此之后的清理只是删除实际 VM 的问题。
不幸的是,重置整台机器在时间上要贵一些,而且如果你经常这样做的话,我猜多年来硬件也会磨损。

我相信仅仅卸载已安装的软件是不够的,因为系统上可能会留下一些文件/可再发行文件,这使得后续的测试运行不太有用。
我还相信在测试机器上运行 Hyper-V 虚拟机会对测试结果产生不利影响,尤其是在较弱的硬件配置上。

我真的很想知道是否有一些现有的解决方案可以解决这个问题,以及最聪明的方法是什么。

RiG*_*iD5 6

您绝对可以使用基于某些“黄金映像”+ 差异的一组虚拟机,并且可以在需要时随时间增量丢弃这些虚拟机。这是 PowerShell 可编写脚本的(关闭 VM、丢弃差异等),您也可以使用 Chef / Ansible 来实现更高级别的自动化。另一种方法是使用 Veeam 社区版,即使没有操作系统快照也可以执行相同的操作。当然,它是 PowerShell 可编写脚本的,因此自动化也很容易实现。


Pet*_*orf 3

另一种选择是从 VHD 启动,创建操作系统基础安装,并配置和安装所需的所有内容。制作 VHDX 的副本。然后运行测试并用备份副本替换“脏”VHD,然后重新开始。您也可以自动化其中一些操作。