我正在使用SpecFlow场景概述基于Azure DevOps中的单个测试用例生成多个测试 . 然后我使用azure devops release管道来部署测试并使用自动测试计划运行它们 .
我遇到的问题是SpecFlow场景大纲代表Azure DevOps中的1个测试用例,但我只能通过“关联测试用例”将4个生成的测试资源管理器测试中的1个链接到测试用例到Azure DevOps . 当我部署管道时,它只运行相关的单个测试,而不是Scenario Outline中的每个测试 . 如何让它在Scenario Outline中运行所有测试?
Example:
我只能右键单击AddingUserInformationScenarioOutline("1",null)并将该特定测试链接到VSTS,我无法链接更高的分组AddingUserInformationScenarioOutline(4) . 运行测试计划将导致仅运行测试AddingUserInformationScenarioOutline("1",null) .
1 回答
您不能将多个测试方法与测试用例相关联,但可以将测试方法与多个测试用例相关联 . 有关详细信息,请参阅Associate your test .
因此,在您的方案中,您可以创建多个测试用例并将每个测试方法与它们相关联......
另一种方法是使用 SpecFlow+ Runner 配置构建过程以执行测试:
强烈建议使用specflow runner通过TFS / Azure DevOps(VSTS)运行specflow测试 .
要使用SpecFlow Runner配置构建过程以执行测试:
打开TFS / VSTS并切换到您的构建定义 .
单击 Add build step 以向构建定义添加新步骤 . 单击类别列表中的 Test ,然后单击"Visual Studio Test"旁边的 Add .
配置构建步骤如下:
输入 Test Assembly 的路径
如果同时使用MSTest和SpecFlow Runner,请在 Path to Custom Test Adapters 字段中输入NuGet包文件夹的路径 . 如果您未在此处输入路径,则只会执行MSTest测试,因为TFS无法找到SpecFlow Runner测试适配器 .
如果名称不是
TFS.srprofile
或default.srprofile
(参见上文),请在 Run Settings File 字段中输入.srprofile文件的名称 .更多细节请参考本教程:SpecFlow+ And Build Servers