即使构建成功,也会被标记为不稳定

2022-08-31 20:17:16

我正在运行 Jenkins 版本 1.411 并使用 Maven 进行构建。

即使应用程序构建成功,Jenkins 也将其视为不稳定的构建。我已禁用所有测试以隔离问题。

[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 45.389s
[INFO] Finished at: Wed May 11 12:16:57 EST 2011
[INFO] [DocLinks] Skip document Adaptiv generated site ... (No such directory: site)
Final Memory: 27M/543M
[INFO] ------------------------------------------------------------------------
channel stopped
Archiving artifacts
Email was triggered for: Unstable
Sending email for trigger: Unstable
An attempt to send an e-mail to empty list of recipients, ignored.
Finished: SUCCESS

答案 1

前段时间我用了hudson/jenkins,但你应该看看Jenkins Glossary。

不稳定内部版本如果构建成功,并且一个或多个发布者报告其不稳定,则构建版本为不稳定。例如,如果配置了 JUnit 发布服务器,并且测试失败,则构建将被标记为不稳定。

发布者发布者是编译以外的构建过程的一部分,例如 JUnit 测试运行。发布商可能会报告稳定或不稳定的结果,具体取决于其处理结果。例如,如果 JUnit 测试失败,则整个 JUnit 发布者可能会报告不稳定。

因此,我想您还有其他一些构建部分(JUnit除外)报告了不稳定的结果。查看整个生成过程日志。


答案 2

如果您有单元测试,请确保它们在执行生成时运行。

在我的情况下,单元测试不会运行,Jenkins将构建标记为不稳定。检查控制台输出时,我发现正在运行0个单元测试:

[INFO] -------------------------------------------------------
[INFO]  T E S T S
[INFO] -------------------------------------------------------
[INFO] 
[INFO] Results:
[INFO] 
[INFO] Tests run: 0, Failures: 0, Errors: 0, Skipped: 0

对我来说,修复程序是无助于解决此主题,但提及它也没有坏处:

我是Spring boot 2.2,当我升级到v2.5时,JUnit 5的Vintage Engine从spring-boot-starter-test中删除,所以我需要添加它来使用JUnit 4执行测试。


推荐