我希望能够从 Azure 测试计划运行自动化测试,并在
.yml
文件中定义所有内容。
我在 Azure DevOps 中有一个存储库,其中包含用 .NET Core 编写的多个测试。这些与 Azure 测试计划中的测试用例相关联。 我还通过将
.yml
文件添加到我的存储库来创建 Azure Pipeline。该管道由两个阶段组成:一个阶段用于构建,另一个阶段实际上按每晚计划运行所有测试。
我希望手动测试人员能够从 Azure 测试计划中触发自动化测试。官方文档称必须创建一个发布管道才能做到这一点。所以我的问题是:
为什么需要发布管道?我已经有了构建管道,我不会进行任何发布,我只是希望能够通过单击按钮从测试计划中运行我的测试。
如果我真的必须创建一个发布管道,我如何在
.yml
文件中定义它?官方文档仅提到 Azure DevOps 中的“经典”手动步骤 - 但我不想手动添加管道。我想在 .yml
文件中定义所有内容。
是否可以运行容器化测试?我已经在构建管道中执行了此操作,但由于我找不到在
.yml
中定义发布管道的方法,所以我不知道如何在 Docker 容器中运行它们。
Azure Pipelines 提供了引人注目的编排工作流程来获取测试二进制文件作为工件并运行测试。此工作流程与计划测试工作流程中使用的概念相同,这意味着在计划工作流程中运行测试的用户会发现很容易适应;例如,通过克隆现有的计划测试发布管道。 另一个主要好处是提供一组丰富的任务目录,可以在运行测试之前和之后执行一系列激活。示例包括准备和清理测试数据、创建和清理配置文件等等。
要在 yml 中定义发布管道,您应该转到预览功能页面并打开“多阶段管道”的开关。 下面是一个简单的示例。
stages: - stage: Build jobs: - job: Build pool: vmImage: 'Ubuntu-16.04' continueOnError: true steps: - script: echo my first build job - stage: Deploy jobs: # track deployments on the environment - deployment: DeployWeb pool: vmImage: 'Ubuntu-16.04' # creates an environment if it doesn’t exist environment: 'smarthotel-dev' strategy: # default deployment strategy runOnce: deploy: steps: - script: echo my first deployment
更详细的信息,您可以参考https://devblogs.microsoft.com/devops/whats-new-with-azure-pipelines/