远程运行编码的UI测试

时间:2012-04-17 15:00:21

标签: coded-ui-tests

我必须在VM上远程运行Coded UI测试。我正在使用Mstest.exe来执行测试用例。 现在,当我通过Windows调度程序运行它时,它失败了,因为它需要“Active Desktop”。

我读了一些我们需要使用测试代理的地方。但我不想配置测试代理和测试控制器只是为了设置“活动桌面”,他们能做的其他事情是什么?

4 个答案:

答案 0 :(得分:13)

设置测试控制器和测试代理并不难,这很简单,也是最好的方法。 您可以在此处找到安装指南: http://msdn.microsoft.com/en-us/library/dd293551.aspx

但是,即使使用控制器,仍然存在一些问题。

测试代理可以在服务或进程模式下运行。对于编码ui测试,您需要在过程模式下运行它(因为它需要在相同的Windows会话中)。但是当您使用远程桌面登录VM并关闭它时,目标计算机的桌面将保持锁定状态,并且无法继续进行测试。除非您登录,否则没有活动会话,测试控制器甚至无法启动。

有两种方法可以保存我知道的活动桌面:

  1. (推荐)从sysinternals套件运行AutoLogOn.exe(可在http://live.sysinternals.com/找到)。它将使用指定用户自动登录,而不是机器启动,并保持桌面处于活动状态。
  2. 使非最小化窗口中的远程桌面处于活动状态。您可以找到几个可以保持多个远程桌面打开的应用程序,并保持连接可以解决问题。
  3. 斯塔斯。

答案 1 :(得分:0)

您需要执行以下操作:

1)设置自动登录。

2)禁用屏幕保护程序。

3)禁用所有应该干扰测试的东西,例如:关闭windows更新。

答案 2 :(得分:0)

运行虚拟机上的CODEDUI测试(即使虚拟机处于最小状态),同时在虚拟机上和本地机器上运行,如下所示。

1)关闭计算机上打开的所有远程桌面会话。

2)在本地计算机中,单击“开始”,然后选择“运行”。在“运行”对话框中,键入regedit,然后按Enter键。注册表编辑器启动。

3)找到以下任何注册表项:

HKEY_CURRENT_USER ----->软件----->微软----->终端服务器客户端 (如果要更改用户帐户的RDC设置)

- 或 -

HKEY_LOCAL_MACHINE ----->软件----->微软----->终端服务器客户端 (如果要更改所有帐户的RDC设置)

右键单击“终端服务器客户端”并选择“新建”---> 'DWORD Value'--->将名称命名为---> RemoteDesktop_SuppressWhenMinimized。 ---->右键单击此名称并选择“修改”--->在弹出窗口中输入'值数据'为'2'

这就是全部。现在,最小化计算机上的RDC窗口不会影响远程计算机的GUI,GUI仍可用于自动GUI测试。

答案 3 :(得分:-1)

您无法通过正常的RDP连接运行CodedUI测试 - 您需要登录到Console会话。假设您要运行测试的计算机是Hyper-V计算机,则可以使用Hyper-V虚拟机管理器登录到控制台会话。在某些情况下,使用/ admin参数运行远程桌面可能有效(但它不适用于我):

mstsc -v:SERVERIP -admin
相关问题