如何使用Maven AND JUnit5标签

斯科特

有没有一种方法可以只运行每个给定标签的测试?例如,我们可以仅使用tag1AND运行测试tag2吗?

我们将Maven 3.6.2与Surefire的2.22.2版本和JUnit 5.5.2一起使用,以针对许多应用程序API端点运行测试。每个测试至少具有3个标签,用于指定测试类型,应用程序和方法类型。有些有更多。

当前,我们正在从命令行运行测试,以使测试人员可以控制每次运行:

mvn test -Dgroups=app1,fast

我们遇到的问题是,上面的代码将运行带有app1OR标签的所有测试fast结果是运行了许多测试。测试人员的目标是仅对“ app1”运行“快速”测试。

尽管可以使用excludedGroups,但直到运行后这对测试仪都没有帮助。此外,我们每天都会添加测试和标签,因此今天可用的东西明天可能不可用。

我们的目标之一是在命令行上启用标签的规范,而不需要测试人员编辑POM来运行不同的测试组合。我们想从命令行指定测试集,而不必在两次运行之间接触POM。由于测试组合的清单越来越多,我们的POM变得太大而无法有效管理。

Singfire是否可以将ANDing JUnit5标签一起使用?

赫马尔拜兹

在Maven Surefire / Maven Failsafe中,您可以按照前面提到的方式定义,但是可以为JUnit Jupiter(又名JUnit 5)定义,如下所示:

mvn test -Dgroups="app1&fast"

要么

mvn test -Dgroups="app1|fast"

有关更多详细信息,请查看文档。

顺便说一句:我建议升级到最新版本的maven-surefire-pluginmaven-failsafe-plugin

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章