Azure 在远程服务器上运行集成测试

Azure 在远程服务器上运行集成测试,azure,azure-devops,azure-pipelines,Azure,Azure Devops,Azure Pipelines,我一直在试图找到一种在Azure管道过程中在远程服务器上运行集成测试的方法。在我的情况下,管道在Azure中运行,并部署到本地服务器。我想知道是否有一种方法也可以将集成测试部署到同一台服务器上,并在同一过程中运行它们并向Azure报告?好问题。例如,如果您的集成基础架构位于防火墙后面,就会出现这种情况 一种解决方案是在集成基础设施上使用自托管代理 另一种直截了当的方法是将集成测试scp到集成基础架构,然后ssh运行它们,然后scp返回测试结果。scp和ssh都有管道任务 请注意,这些备选方案中的

我一直在试图找到一种在Azure管道过程中在远程服务器上运行集成测试的方法。在我的情况下,管道在Azure中运行,并部署到本地服务器。我想知道是否有一种方法也可以将集成测试部署到同一台服务器上,并在同一过程中运行它们并向Azure报告?

好问题。例如,如果您的集成基础架构位于防火墙后面,就会出现这种情况

一种解决方案是在集成基础设施上使用自托管代理

另一种直截了当的方法是将集成测试scp到集成基础架构,然后ssh运行它们,然后scp返回测试结果。scp和ssh都有管道任务

请注意,这些备选方案中的通信是反向的,即
托管代理调用管道
管道调用基础设施
。您的公司安全可能更喜欢其中一个。

您可以使用它来运行管道。由于Azure代理无法与本地数据库通信,因此可以在本地计算机上设置自托管代理。您的localDB可以访问自托管代理

以便在发布管道中运行集成测试。您可以将测试项目或测试程序集dll文件包含在生成管道中发布的工件中。这样,您的集成测试项目就可以被发布管道中的测试任务访问

将测试文件包括在工件中。您可以在构建管道中添加第二个
发布构建工件
任务。指定将发布到测试文件位置的路径

通过在发布管道中添加VsTest任务或其他测试任务,在发布管道中运行测试。发布管道将把您的工件下载到文件夹
$(System.DefaultWorkingDirectory)

Visual Studio测试任务和Dot NetCore CLI任务会自动将测试结果发布到管道中,而Ant、Maven、Gulp、Grunt、.NET Core和Xcode等任务会将发布结果作为任务中的一个选项提供。此外,您还可以使用任务

以下是一些您可以参考的文章: