空手道 API 框架-测试依赖

Karate API framework- test dependency

在我的回归套件中,我有 600 多个测试用例。所有这些测试都有@RegressionTest 标签。看下面,我是怎样 运行ning.

  _start = LocalDateTime.now();
    //see karate-config.js files for env options
    _logger.info("karate.env = " + System.getProperty("karate.env"));

    System.setProperty("karate.env", "test");
    Results results = Runner.path("classpath:functional/Commercial/").tags("@RegressionTest").reportDir(reportDir).parallel(5);
    generateReport(results.getReportDir());
    assertEquals(0, results.getFailCount(), results.getErrorMessages());

我在想,我可以创建 1 个测试并给它一个标签 @smokeTest。我希望能够 运行 测试第一个,并且只有当该测试通过时 运行 整个回归套件。我怎样才能实现这个功能?我正在使用 Junit5 和 Karate.runner.

我认为最简单的做法是 运行 在 JUnit 中进行一次测试,如果失败,抛出异常或跳过 运行 实际测试。

所以使用Runner两次。

否则请考虑空手道不直接支持此功能,但欢迎 code-contributions。

另请参考这个问题的答案: