我想要达到的目标:
我在Azure DevOps上有一个存储库,它承载了我的web应用程序。我编写了一个使用Cypress的UI自动化测试套件。我为我的测试用例创建了一个单独的存储库,以检查它们是否正常工作。我创建了一个具有以下内容的管道:
trigger:
- manual-tests
pool:
vmImage: 'ubuntu-latest'
steps:
- task: NodeTool@0
inputs:
versionSpec: '10.x'
displayName: 'Install Node.js'
- script: |
npm install
displayName: 'npm install'
- task: Npm@1
inputs:
command: 'custom'
customCommand: 'run test'
continueOnError: true
- task: PublishTestResults@2
inputs:
testResultsFormat: 'JUnit'
testResultsFiles: '**/test-output-*.xml'
testRunTitle: 'My Test Cases'我将触发器设置为存储UI自动化代码的存储库的一个分支。我想要的是,当web应用程序存储库的某个分支受到推动时,触发我的自动化脚本。有办法这样做吗?我们能否将测试用例文件存储在应用程序存储库中并给出测试脚本的路径?
发布于 2020-07-03 02:02:42
UI Automation Repo和Web Application Repo似乎是两个独立的回购。
来触发我的自动化脚本,当web应用程序存储库的某个分支被推送时。有办法这样做吗?
功能:“从不同的回购触发管道”现在不可用。
这一特性仍在开发中。YAML管道的多存储库支持将很快提供给azure服务。
请检查Azure DevOps功能时间线2020 Q2中的功能:“YAML管道的多存储库支持”。这项功能将在2020年7月底向每个人推出。
解决方案:
您可以尝试使用管道触发器。
以下是几个步骤:
Step1:使用web应用程序存储库创建管道,然后可以设置触发器分支。
Step2:在Yaml文件中添加管道触发器()。
例如:
resources:
pipelines:
- pipeline: Name
source: Pipeline name
trigger:
branches:
- releases/*
- master当您在web应用程序存储库中进行更改时,将触发与web应用程序的管道。
运行管道后,具有UI自动化回购的管道将被触发。
我们能否将测试用例文件存储在应用程序存储库中并给出测试脚本的路径?
当然了。你可以的。
如果要使用管道中的测试文件(UI自动化回购),可以在管道中添加回购资源。
例如:
resources:
repositories:
- repository: MyAzureReposGitRepository
type: git
name: MyProject/WebapplicationRepo
...
steps:
- checkout: MyAzureReposGitRepository注意:回购将被签出到代理源文件夹。
希望这能有所帮助。
https://stackoverflow.com/questions/62690710
复制相似问题