我们有一个天蓝色的 DevOps CI 项目,其中有单独的存储库,用于我们的 Web 应用程序和 cypress 测试的开发代码。
我需要创建一个测试管道,只要 Web 应用程序存储库的主分支发生更改,该管道就会运行。由于测试位于不同的存储库中,我如何实现这一目标?
我很难做到这一点,因为我是 Azure 中的 CI 管道和 Cypress 的新手。
运行完成后,我还想在天蓝色中显示一个小部件或通过/失败的测试用例的一些视觉表示。有人可以帮助我设置 cypress 并显示结果吗?预先感谢。
我需要创建一个测试管道,只要 Web 应用程序存储库的主分支发生更改,该管道就会运行
您可以根据您的测试存储库创建管道,并将您的“Web 应用程序”存储库添加为存储库资源。添加分支过滤器来控制管道仅在主分支提交时才会触发。
trigger: none
resources:
repositories:
- repository: webapprepo
type: git
name: <your-project-name>/webapprepo
trigger:
branches:
include:
- main
运行完成后,我还想在天蓝色中显示一个小部件或通过/失败的测试用例的一些可视化表示。
添加
PublishTestResults@2
任务以将测试结果发布到构建摘要页面。
例如,
- script: |
npm install -g wait-on
npm run start:e2e & wait-on $(hosturl) & npm run cy:run-junit-reporter:e2e && npm run cy:run-junit-reporter:component
continueOnError: False
displayName: 'Run tests'
- task: PublishTestResults@2
displayName: "Publish test results"
inputs:
testResultsFormat: "JUnit"
testResultsFiles: "$(Pipeline.Workspace)/s/cypress/results/result-*.xml"
testRunTitle: "$(Build.BuildNumber)"
searchFolder: "$(System.DefaultWorkingDirectory)"
mergeTestResults: true
然后从构建摘要页面查看测试结果: