我们有多台服务器,希望能够在这些服务器上运行单元测试。我们使用 Visual Studio Community 2017 进行单元测试开发。
我们认为 Visual Studio Test Controllers 和 Visual Studio Test Agents 可能是实现此目的的最佳选择。最终目标是将 VS Test Controller 安装在一台服务器上,将 VS Test Agents 安装在其他几台服务器上;然后 VS Test Controller 将在 VS Test Agents 上启动这些单元测试。
在迈出这一步之前,我试图在本地测试所有这些。我在台式电脑上安装了 VS Test Controller 和 VS Test Agent(均为 2017 年)。我已成功将测试代理注册到测试控制器,当我登录 Windows 时,我看到一个“测试代理状态”窗口,看起来代理正在等待指令。(下图。)
Visual Studio Test Agent 2017:“测试代理状态”窗口
我还使用 .testsettings 文件设置了 VS IDE。我已从 .testsettings 配置向导的“角色”选项卡将其指向本地测试控制器 (127.0.0.1:6901),并且我可以看到注册代理的状态为“就绪”。此“角色”选项卡中有一个图标,将鼠标悬停在该图标上时,会显示“已连接到‘127.0.0.1:6901’”。
到目前为止,一切都很好。
我发现“如何:使用测试控制器和测试代理运行测试“MSDN 上的文章。按照此处概述的步骤操作(即在 .testsettings 文件上选择“活动加载和 Web 测试设置”上下文菜单选项并从测试资源管理器运行我的一个单元测试),测试就可以正常运行,即它实际上并没有在测试代理上运行。我知道这一点是因为前面提到的“测试代理状态”窗口没有变化;“当前正在运行的测试”保持为“无”。
如何从 Visual Studio 运行单元测试以便它通过测试控制器在指定的测试代理上执行?