如何在Azure测试计划中运行自动化测试

时间:2019-10-09 14:04:04

标签: azure testing azure-devops azure-pipelines devops

我希望能够在Azure测试计划中运行自动化测试,并在yml文件中定义所有内容。

我所做的: 我在天蓝色的DevOps中有一个存储库,其中包含以.NET核心编写的多个测试。这些与天青测试计划中的测试用例相关联。 通过将.yml文件添加到我的仓库中,我还创建了一个Azure管道。该管道包括两个阶段,一个阶段用于构建,另一个阶段实际上按夜间时间表运行所有测试。

但是,我希望手动测试人员也能够从Azure测试计划中触发自动化测试。官方文档说,必须创建一个发布管道才能这样做。所以我的问题是:

  1. 为什么需要发布管道?我已经有了构建管道,我不会发布任何版本,只希望能够通过单击按钮从测试计划中运行测试。

  2. 如果真的必须创建发布管道,该如何在yml文件中定义它?官方文档只提到了“经典”,天蓝色DevOps中的手动步骤,但是我不想手动添加管道,我想在yml文件中定义所有内容。

  3. 是否可以将我的测试容器化?我已经在构建管道中做到了,但是由于找不到在yml中定义发布管道的方法,所以我不知道如何在docker容器中运行它们。

1 个答案:

答案 0 :(得分:1)

  1. Azure Pipelines提供了引人入胜的编排工作流,以获取作为工件的测试二进制文件并运行测试。此工作流程与计划的测试工作流程中使用的概念相同,这意味着在计划的工作流程中运行测试的用户会发现它很容易适应;例如,通过克隆现有的预定测试发布管道。 另一个主要好处是可以使用丰富的任务目录集,这些任务目录允许在运行测试之前和之后执行一系列激活。示例包括准备和清除测试数据,创建和清除配置文件,等等。

  2. 要在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/