【问题标题】:Mark Job as Unstable将作业标记为不稳定
【发布时间】:2015-07-16 03:50:29
【问题描述】:

我在 Jenkins 中为我的 Angular 应用程序设置了一个 CI 管道。我现在有两个简单的工作。我的两个工作共享一个共同的工作空间。第一项工作基本上是构建(npm install、bower install 等)。它工作正常。第二个工作基本上是运行单元测试(gulp test)。我正在使用业力进行测试和幻象。因此,目前这两项工作都运行良好。

最终我会为我的集成测试和代码分析等添加更多作业。所以基本上每个成功的作业都会触发管道中的下一个运行。

我想知道如果出现故障,是否可以将作业标记为不稳定。例如,在我运行单元测试的第二份工作中,说即使一个测试用例失败,我也想将其标记为不稳定,因为它不会触发任何进一步的工作。这是可能的吗?如果可以,最智能和最有效的方法是什么?而且由于我从来没有测试用例失败过,所以我不知道这一点,但是如果一个测试用例失败,JENKINS 会自动将作业标记为不稳定???

【问题讨论】:

    标签: angularjs jenkins continuous-integration karma-runner


    【解决方案1】:

    如果一个测试用例失败,Jenkins 是否会自动将 [a build as] 标记为不稳定?

    是的。这将取决于您为 Jenkins 使用的确切测试插件,但我想他们都应该正确实现这一点。

    我想将 [a build] 标记为不稳定,使其不会触发任何进一步的 [downstream] 作业

    听起来您已经在使用“构建其他项目”构建后操作。您只需确保选择了默认的“仅在构建稳定时触发”选项。
    然后,如果任何测试失败,构建将不稳定,并且不会触发下游构建。

    【讨论】:

    • 你推荐我使用什么测试插件?
    • 这取决于您使用的测试运行器。如果您可以以 JUnit XML 格式输出测试结果,则可以使用 Jenkins 轻松解析。有一个从xUnit plugin page 链接的其他测试插件列表,包括 JSUnit。所有这些都应该同样有效。
    • 感谢朋友的建议。所以为了弄清楚这一点,目前我没有在我的应用程序中使用 Karma,如果一个测试用例失败,我的构建将被自动标记为不稳定?
    • 仅仅运行测试是不够的——您需要将结果输出到一个文件中,然后通过“构建后操作”让 Jenkins 分析结果。然后,Jenkins 将能够根据测试结果更改构建结果。您可用的构建后操作取决于您安装了哪些插件(JUnit 插件通常是预先安装的),因此您需要找到适合测试运行器的插件。但是看起来 Karma 可以输出 JUnit XML,所以应该很简单:karma-runner.github.io/0.8/plus/Jenkins-CI.html
    • 你之前部分回答了我的新问题,认为你可能能够正确回答这个问题stackoverflow.com/questions/31567894/fail-pipeline-in-jenkins
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-11-20
    • 2017-07-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-23
    相关资源
    最近更新 更多