Azure devops 在Azure DevOps(VSTS)中运行来自测试计划的SpecFlow场景大纲

Azure devops 在Azure DevOps(VSTS)中运行来自测试计划的SpecFlow场景大纲,azure-devops,specflow,Azure Devops,Specflow,我在Azure DevOps中使用SpecFlow场景大纲基于单个测试用例生成多个测试。然后,我使用azure devops发布管道部署测试,并使用自动测试计划运行它们 我遇到的问题是,SpecFlow场景大纲表示Azure DevOps中的1个测试用例,但我只能通过“关联到测试用例”将4个生成的测试浏览器测试中的1个链接到Azure DevOps的测试用例。部署管道时,它只运行关联的单个测试,而不是场景大纲中的每个测试。如何让它运行场景大纲中的所有测试 示例: 我只能右键单击AddingUse

我在Azure DevOps中使用SpecFlow场景大纲基于单个测试用例生成多个测试。然后,我使用azure devops发布管道部署测试,并使用自动测试计划运行它们

我遇到的问题是,SpecFlow场景大纲表示Azure DevOps中的1个测试用例,但我只能通过“关联到测试用例”将4个生成的测试浏览器测试中的1个链接到Azure DevOps的测试用例。部署管道时,它只运行关联的单个测试,而不是场景大纲中的每个测试。如何让它运行场景大纲中的所有测试

示例:

我只能右键单击AddingUserInformation ScenarioOutline(“1”,null)并将特定测试链接到VST,我无法链接更高的分组AddingUserInformation ScenarioOutline(4)。运行测试计划将导致仅运行测试AddingUserInformationScenarioOutline(“1”,null)


不能将多个测试方法与测试用例关联,但可以将一个测试方法与多个测试用例关联。详情请参阅

因此,在您的场景中,您可以创建多个测试用例,并将每个测试方法与它们关联

另一种方法是使用SpecFlow+Runner将构建过程配置为执行测试:

SpecFlow+runner

针对SpecFlow的智能集成测试运行程序

SpecFlow+Runner是一个专用的测试执行引擎提供更好的性能 报告、更快的(并行)测试执行和更好的VS/TFS 整合

强烈建议使用specflow+runner通过TFS/Azure DevOps(VST)运行specflow测试

要配置生成过程以使用SpecFlow+Runner执行测试,请执行以下操作:

  • 打开TFS/VSTS并切换到生成定义
  • 单击添加生成步骤,将新步骤添加到生成定义中。 单击类别列表中的测试,然后单击旁边的添加 “Visual Studio测试”
  • 按如下方式配置生成步骤:

    输入测试程序集的路径

    如果同时使用MSTest和SpecFlow+Runner,请输入 自定义测试适配器路径中NuGet package文件夹的路径 领域如果您不在此处输入路径,则仅MSTest测试 将执行,因为TFS找不到SpecFlow+Runner测试 适配器

    在运行设置文件中输入.srprofile文件的名称 如果名称不是
    TFS.srprofile
    default.srprofile
    (请参阅 上文)

  • 保存您的更改


  • 更多详细信息请参阅本教程:

    谢谢您的建议。我可能会使用在Azure DevOps中创建额外测试用例并将每个测试用例链接到生成的测试方法的解决方案。我的最终目标是能够通过Azure DevOps测试管理器管理运行哪些自动化测试以及使用何种配置,而不仅仅是每次都运行所有自动化测试,而且我认为该解决方案符合我的最终目标。