我有一个在Azure Pipelines中构建的nodejs Web应用程序。我计划在 Azure VM(可能是开发测试实验室(上部署生成的项目,作为管道步骤之一的一部分。
我现在想通过将浏览器指向 Azure VM 中的托管 URL 来运行浏览器测试。我想在生成管道中使用 Azure 窗口和 Linux VM 在此远程 Azure VM 上运行测试,并将结果发布到管道。这些将是本质上在nodejs服务器上运行的业力测试。
在我当前的设计中,测试结果将在托管 nodejs 应用程序的 Azure VM 上提供。
- 我不明白的是,我怎样才能将这些测试结果恢复到 用于发布相同内容的 Azure 管道?
- 有没有办法构建此解决方案,而无需将我的 Azure VM 设置为 Azure DevOps 中的管道代理?
- 是否有使用 Azure DevOps 设计此类持续测试基础结构的标准模式?
谢谢
根据你的描述,你只想使用主机代理访问自主机代理Microsoft URL(忽略它是 Azure VM 或你自己的物理机,与主机代理相同(。
这取决于该网址是否可以通过公共互联网访问。
此处最简单的解决方案是直接在该 Azure VM 上部署生成代理。然后运行生成并测试。您可以通过以下脚本和任务执行此操作:
-
运行
ng test
或任何命令来引发测试 -
使用
PublishTestResults
任务发布测试结果 -
使用
PublishCodeCoverageResults
任务发布代码覆盖率结果
Microsoft托管的代理池并非适用于所有方案。对于许多团队来说,这是运行作业的最简单方法。您可以先尝试一下,看看它是否适用于您的构建或部署。如果没有,您可以使用自承载代理。自承载代理使你能够更好地控制生成、测试和部署。
在你的方案中,将 Azure VM 设置为管道代理并在其上运行生成/测试应该是最简单、方便的解决方案。