我的任务是实现我们部门测试流程的自动化。
要进行测试,我首先必须在主机系统上安装应用程序设置,然后运行另一个应用程序,即测试器。
测试器应用程序使用ActiveX
控件来控制先前安装的应用程序。为了运行测试器应用程序,我需要一个图形界面,因此我无法在无人看管的情况下运行测试。
为了自动化这个过程,我考虑使用Hyper-V
一个Powershell
脚本来自动部署清理Windows VMs
、安装设置、运行测试应用程序并VM
在之后销毁。
部署过程运行良好,但现在出现了一个棘手的部分,即实际运行测试器应用程序而无需手动与 交互VM
。
最初,我以为我可以远程控制VM
via Powershell
,然后执行测试器应用程序,然后打开其 GUI 并进行测试。
不幸的是我错了。我在 Google 上搜索了一会儿,但到目前为止还没有找到任何有用的方法。
我现在的问题是,我的方法是否可行,以及我是否可以解决我的问题?
答案1
我要做的是在 VM 中使用通用用户设置自动登录以进行测试,并创建一个可执行文件(或脚本),C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp
例如将其添加到 Windows 的自动启动位置之一。
这个小程序将通过在请求中传递虚拟机名称作为参数来联系 Web 服务,然后 Web 服务将输出任务列表或在虚拟机中启动的命令。
然后,您可以创建一个管理工具来创建虚拟机和“任务”之间的关系。
如果您不想创建 Web 服务,您可以简单地将文本文件或 PowerShell 脚本放在文件共享中(例如,文件名是 VM 名称),并且您只需在 VM 启动时启动/读取相应的文件。