我有一种情况/要求创建单个运行命令或脚本文件,如果结果通过,它将首先执行@Smoke标签测试,然后执行@Regression标签,否则中止执行。
我们有 BDD(cucumber + Selenium + Java)和 Maven 项目。这可以实现吗?
如果您将 Cucumber 与 JUnit 5 结合使用,那么您可以使用 JUnit Platform Launcher API 以编程方式运行测试。
public class RunCucumber {
public static void main(String[] args) {
LauncherDiscoveryRequest request = request()
.selectors(
selectDirectory("path/to/features")
)
.filters(
includeTags("smoke"),
)
.build();
Launcher launcher = LauncherFactory.create();
SummaryGeneratingListener listener = new SummaryGeneratingListener();
launcher.registerTestExecutionListeners(listener);
launcher.execute(request);
TestExecutionSummary summary = listener.getSummary();
// Do something with summary
// Repeat for regression tests if needed.
}
}