运行 specflow selenium 测试在发布管道而不是构建管道中的优势是什么

What are the advantages of running specflow selenium tests in release pipeline instead of build pipeline

我在 azure 构建管道中执行 specflow selenium 测试,它工作正常。但是有人强迫我 运行 在发布管道中进行这些测试,而不是通过从构建管道中获取工件来构建管道。

我没有向服务器或任何其他机器部署任何应用程序。我的发布管道只有 运行 硒测试。

我想知道为什么我要创建一个发布管道,如果我可以在构建管道本身中做到这一点。

运行 构建管道中的 Selenium 测试有以下缺点:

  • 在大多数情况下,Selenium 测试比例如简单的单元测试,这会增加构建管道的时间。但是您需要一个快速构建管道来继续您的工作。
  • 如果您的测试不稳定,您将破坏构建,恕我直言,这是不行的。

但在某些情况下,在构建管道期间执行一小组 Selenium 测试是有意义的(如果未包含其他测试)。

如果您有大型产品或构建管道需要很长时间,这很有意义。您不想等待几个小时才能在发布管道中成功构建,因为某些基本功能无法正常工作,所有测试都失败了。

在持续集成中,重点是通过基本构建验证测试获得自动化的良好构建,而持续部署则主要关注测试和发布管理流程。

通常,您将 运行 在构建工作流程中进行单元测试,在部署应用程序(通常是 QA 环境)后在发布工作流程中进行功能测试。

官方document还推荐运行在发布管道中进行 ning Selenium 测试