远程运行编码的UI测试

问题描述 投票:10回答:4

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

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

coded-ui-tests
4个回答
13
投票

好吧,设置测试控制器和测试代理并不难,这非常简单,也是最好的方法。您可以在此处找到安装指南:qazxsw poi

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

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

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

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

斯塔斯。


0
投票

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

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

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

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

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

- 要么 -

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

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

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


0
投票

你需要做以下事情:

1)设置自动登录。

2)禁用屏幕保护程序。

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


-1
投票

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

http://live.sysinternals.com/
© www.soinside.com 2019 - 2024. All rights reserved.