如何添加启动 RDP 会话的实验室流程步骤?

Posted

技术标签:

【中文标题】如何添加启动 RDP 会话的实验室流程步骤?【英文标题】:How to add lab process step that starts a RDP session? 【发布时间】:2012-08-16 12:41:34 【问题描述】:

我正在使用 VS2010 和 TFS 以及编码的 UI 测试 (CUIT)。

我创建了一些 CUIT 并将它们添加到 Microsoft Test Manager 2010 中的多个测试用例中。 这些测试在我们的构建-部署-测试步骤中执行。

这看起来如下(简化):

    构建应用程序 部署 2a.将要部署应用程序的虚拟机的快照设置为未安装应用程序的快照 2b。安装应用 运行测试

第 3 步包含编码 UI 测试,但它们无法执行(将失败),因为没有活动的远程桌面连接,它们需要执行。

现在我想添加一个构建步骤 2c。这会自动连接到远程桌面,以便执行编码的 UI 测试。

我应该如何在流程模板中创建此步骤?

【问题讨论】:

【参考方案1】:

我自己尝试通过运行 PowerShell 脚本通过远程桌面连接到计算机(请参阅here 了解如何使用远程桌面命令行实用程序)。

这对我个人来说并没有真正起作用,因为我是从构建机器运行这个脚本——我只能通过远程桌面连接到它——所以当我关闭远程桌面时,它会关闭构建机器上的会话并因此我将无法获得与我的测试环境的远程桌面连接(另外,必须从构建机器启动远程桌面并不理想)。

因此,我采用的解决方案是在测试环境中启用自动登录(有多种方法可以做到这一点,我不记得我是如何做到的,但很容易用谷歌搜索)。

因此,在从我们的构建机器启动的 PowerShell 脚本中,我使用了一个命令来远程重启测试环境。启用自动登录后,测试环境将以活动会话开始备份,然后我可以继续进行 Visual Studio Coded UI 测试。这对我有用,没有任何问题。

我使用的命令是这样的:

Shutdown.exe /r \\mytestenvironment

Here is some documentation for it.。如果您打算使用此命令远程重启计算机,请不要忘记授予您的机器在测试环境中的权限,否则此命令将不起作用。

然后我启动了一个休眠几分钟的命令,让远程测试环境有时间重新启动(使用活动会话),然后我启动了测试。

就我个人而言,我使用了 PowerShell 脚本,但如果您更熟悉的话,您也可以使用 DOS/Batch 脚本。

另外,您是否尝试将自动化测试作为构建过程模板的一部分运行?

如果您需要任何进一步的帮助,请告诉我。

【讨论】:

@Ciaran 您是否尝试过使用 VSTS 新任务构建定义。我已经设置了任务构建定义并按照说明启用了自动登录。除非我打开了 RDP 会话会话,否则我在 VSTS 构建定义上构建的任务仍然会失败。对于您正在谈论的命令脚本,它是如何设置的。我是设置 powershell 脚本的新手。我正在尝试将构建定义设置为计划构建,以便该过程可以自动化。在此先感谢您的帮助 我根本没用过VSTS。它不必是 PowerShell 脚本,它可以只是一个包含命令的简单 .BAT 文件。我使用 Windows 任务调度程序在需要时自动执行脚本。

以上是关于如何添加启动 RDP 会话的实验室流程步骤?的主要内容,如果未能解决你的问题,请参考以下文章

Linux系统恢复

CentOS 6开机启动流程实验篇

作为启动 RDP 程序运行时如何停止初始形式最大化?

使用XP客户端访问远程桌面WEB主机时,提示“此RDP文件已损坏 远程连接无法启动”原因及如何解决?

使用跟踪代码管理器的 Android 内容实验几天后未显示会话

如何检测Firebase测试实验室中的运行情况