我有一个 Jenkins CI 服务器,它设置了一个使用 maven-surefire 运行的 Selenium 测试项目。我需要将项目作为参数化构建,以便我可以通过带有 Dtest 作为参数的 URL 触发构建(并且只运行我在 url 中指定的测试)。这很好用。
不幸的是,在这个参数化配置中,我一直无法弄清楚如何运行所有测试。由于它处于参数化构建模式,我必须始终指定 -Dtest 参数。
根据Surefire 文档,似乎我应该能够对测试名称进行通配符,并且一切都会运行:
-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并行运行的,另外一件奇怪的事情是,在打印出单个测试结果时,在第4个结果之后,第5个结果开始打印,但从未显示结果,并且包括1美元在最后:
Running <test_class_path>$1
如果我能澄清任何事情或回答任何问题,请告诉我。
提前感谢您的帮助!