运行 除非 window 打开,否则 VM 上的测试不起作用
Running tests on VM does not work unless window is open
我们正在尝试远程进行测试,因此我们设置了一些虚拟机来 运行 我们的 GUI 测试并释放我们的本地机器。我们希望的是像在物理机器上一样进行测试 运行,但是它们似乎需要激活远程桌面连接才能正常 运行。这些测试是使用 LeanFT 编写的,它是一个 windows 应用程序,因此这不是移动 GUI 测试。
是否有特定的方法来配置此 VM 以正确设置它以进行不需要活动的远程桌面连接的自动化 GUI 测试?好像它共享我们物理机上的控件..
或者我在这里完全错了.. 远程机器与虚拟机不同吗?谢谢!
可以在没有活动的远程桌面连接的情况下运行 GUI 测试
我通过以下 2 个步骤使用 leaft 实现了这一目标:
- 配置执行测试的方式
无论您是 运行通过 Jenkins slave 还是通过另一种 "listener"(可能是 ssh 或 bamboo 等),您都需要将此侦听器配置为在特定用户已登录。
在我的例子中,我运行正在通过 Jenkins 从站,所以我已经将从站的启动配置为在用户登录后立即启动。
告诉windows在计算机启动时登录用户。您可以通过以下注册表实现:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
"DefaultDomainName"="DOMAIN"
"DefaultUserName"="USERNAME"
"AutoAdminLogon"="1"
"DefaultPassword"="PASSWORD"
核心要求是您需要有一个活动会话(无论您是使用 Jenkins、TeamCity、Grid 还是其他工具来启动测试)。
对于您的虚拟机,您需要有权访问控制台。对于 VMWare vSphere,有一个本地客户端或网站。对于 VMWare Workstation 或 VirtualBox,这些会自动显示。
使用控制台访问,登录系统并将其设置为永不注销、睡眠或休眠。这是您可以查找的各种 OS 设置。
基本上,这些盒子需要始终登录。使用此设置,您需要确保对这些系统的访问受到控制,以免有人随机登录/注销。
我们正在尝试远程进行测试,因此我们设置了一些虚拟机来 运行 我们的 GUI 测试并释放我们的本地机器。我们希望的是像在物理机器上一样进行测试 运行,但是它们似乎需要激活远程桌面连接才能正常 运行。这些测试是使用 LeanFT 编写的,它是一个 windows 应用程序,因此这不是移动 GUI 测试。
是否有特定的方法来配置此 VM 以正确设置它以进行不需要活动的远程桌面连接的自动化 GUI 测试?好像它共享我们物理机上的控件..
或者我在这里完全错了.. 远程机器与虚拟机不同吗?谢谢!
可以在没有活动的远程桌面连接的情况下运行 GUI 测试
我通过以下 2 个步骤使用 leaft 实现了这一目标:
- 配置执行测试的方式
无论您是 运行通过 Jenkins slave 还是通过另一种 "listener"(可能是 ssh 或 bamboo 等),您都需要将此侦听器配置为在特定用户已登录。
在我的例子中,我运行正在通过 Jenkins 从站,所以我已经将从站的启动配置为在用户登录后立即启动。
告诉windows在计算机启动时登录用户。您可以通过以下注册表实现:
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon] "DefaultDomainName"="DOMAIN" "DefaultUserName"="USERNAME" "AutoAdminLogon"="1" "DefaultPassword"="PASSWORD"
核心要求是您需要有一个活动会话(无论您是使用 Jenkins、TeamCity、Grid 还是其他工具来启动测试)。
对于您的虚拟机,您需要有权访问控制台。对于 VMWare vSphere,有一个本地客户端或网站。对于 VMWare Workstation 或 VirtualBox,这些会自动显示。
使用控制台访问,登录系统并将其设置为永不注销、睡眠或休眠。这是您可以查找的各种 OS 设置。
基本上,这些盒子需要始终登录。使用此设置,您需要确保对这些系统的访问受到控制,以免有人随机登录/注销。