Serenity Junit - 如何通过 mvn 命令使用 serenity 执行指定的单个测试 [重复]

Posted

技术标签:

【中文标题】Serenity Junit - 如何通过 mvn 命令使用 serenity 执行指定的单个测试 [重复]【英文标题】:Serenity Junit - How can I execute a specified single test via mvn command with serenity [duplicate] 【发布时间】:2021-09-15 13:45:51 【问题描述】:

我是 Serenity Junit 的初学者。我试图澄清是否有任何方法可以通过mvn 命令行执行指定测试类的单个测试?我也试过mvn clean verify -Dtest="com.studentapp.junit.studentsinfo.StudentsCRUDTest",但我的所有测试都被执行了,而不仅仅是 StudentsCRUDTest 类中的测试。

正如您在我的捕获中看到的,我的 StudentsCRUDTest 类中只有一个测试

我确实非常感谢您帮助澄清我的担忧。 谢谢

【问题讨论】:

mvn test -Dtest=StudentsCRUDTest 基于***.com/questions/1873995/… 非常感谢您提供的信息@MaroineMlis。我将我的评论作为另一个答案发布在下面,因为我无法将捕获的图像附加到评论会话中。非常感谢:) 感谢您的链接也@KristofNeirynck。您的链接对我来说也很丰富,但是评论会话不允许在同一评论中标记 2 个用户名 hihi :) 【参考方案1】:

你可以通过标签运行:

$ mvn clean verify -Dtags="your-tag"

参考:https://johnfergusonsmart.com/running-serenity-bdd-tests-with-tags/

【讨论】:

非常感谢您的建议@lucasnguyen17。我能够成功地按标签执行单个测试。在我的问题中,我想找到一些方法来通过命令行执行我的单个测试以进行调试或调查,我不想在我想重新运行时添加标签(例如:development:in-progress)或调试我的单个测试。【参考方案2】:

非常感谢@MaroineMlis 和@Kristof Neirynck 提供的信息,我从您建议的链接中找到了根本原因。当我在我的 POM 中更新 maven-surefire 插件配置时,它就像一个魅力,如下所示:

【讨论】:

Serenity bdd 使用故障保护插件,不是万无一失,所以我猜你可以运行测试但没有 serenity 报告。 Serenity 报告也是用我的以下命令正常生成的@lucasnguyen17mvn clean test -Dtest=com.studentapp.junit.createStudent.CreateStudentTest serenity:aggregate @lucasnguyen17,感谢您提供的信息。我在这里找到了答案***.com/questions/53377534/…。使用failsafe时,我们需要使用mvn verify -Dit.test=className#testMethodName而不是mvn test -Dtest=className#testMethodName作为maven surefire

以上是关于Serenity Junit - 如何通过 mvn 命令使用 serenity 执行指定的单个测试 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

带有 @Suite 注释的 Junit5 测试套件不使用 mvn test 命令执行测试

从npm 角度理解 mvn 的 pom.xml

Serenity框架官方文档翻译前言(什么是Serenity平台)

如何使用 JVM 参数在终端中通过 maven 运行 junit 测试

mvn test 指定suit

mvn test 指定suit