java - Maven -Dtest=* test,似乎没有运行所有测试

标签 java maven selenium continuous-integration maven-surefire-plugin

我有一个 Jenkins CI 服务器,它设置了一个使用 maven-surefire 运行的 Selenium 测试项目。我需要该项目是参数化构建,以便我可以通过 URL 并以 Dtest 作为参数触发构建(并且仅运行我在 url 中指定的测试)。这效果很好。

不幸的是,我无法弄清楚如何在此参数化配置中运行所有测试。由于它处于参数化构建模式,因此我必须始终指定 -Dtest 参数。

基于Surefire documentation ,看来我应该能够使用通配符测试名称,并且所有内容都会运行:

-Dtest=* or -Dtest=Test*

运行这些参数的奇怪结果是来自所有 6 测试的打印语句(我创建的)(表示它们都已启动):

"Test <test_name> started, click here to see the SauceLabs video"

然后是仅 4/6 测试的标准测试结果(如下)

Running <test_class_path>
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.048 sec

接下来是摘要:

Tests run: 4, Failures: 0, Errors: 0, Skipped: 0

如果重要的话,测试是使用 Surefire 并行运行的,另一件奇怪的事情是,在打印各个测试结果时,在第四个测试结果之后,第五个结果开始打印,但从未显示结果,并且末尾包含 1 美元:

Running <test_class_path>$1

如果我可以澄清任何事情或回答任何问题,请告诉我。

预先感谢您的帮助!

最佳答案

我认为这是一个正则表达式:

mvn -Dtest=.*

对我有用。

关于java - Maven -Dtest=* test,似乎没有运行所有测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12096960/

相关文章:

java - 多路开关中开关盒的解决方案

java实时设计rtsj

java - 如何将 EditText 中的多个值设置为 1 Textview 并自动显示而无需单击按钮

java - 在 Maven 项目中重用常量和属性?

javascript - 无法按模型选择元素

java - 如何将 TornadoFX 中的文本字段限制为仅数字

java - 我想编写一个 shell 脚本,它将 mvn clean test 命令作为输入,当我运行该脚本时,它应该运行我的 Maven 项目

java - 找不到模块 : How to compile JDK 10 Eclipse Maven Project with Module?

java - 编程: open 2 popup windows with one click

java - 如何使用 Selenium WebDriver TestNG 数据提供程序方法从 Excel 工作表读取特定值?