【问题标题】:Running Unit Tests on NodeJS with Jenkins使用 Jenkins 在 NodeJS 上运行单元测试
【发布时间】:2016-12-19 08:32:05
【问题描述】:

我如何设置 Jenkins 来启动我的 Node.JS 测试服务器,运行单元测试(可能是 JSTestDriver/Jasmine),然后顶上 Node.JS?

我可以使用 Execute Shell 启动 Node.JS,但它会“挂起”构建(由于 Node 作为守护程序运行而预期)

【问题讨论】:

  • 你用 Node.Js 做什么?
  • @GarethOwen,在这种情况下,是一个用于测试的存根 API,因为真正的 API 是由另一个团队开发的

标签: node.js jenkins


【解决方案1】:

我写了一篇文章,解释了我是如何设法使用 Mocha 和 ant 运行单元测试的。

基本思路是:

  • 设置您的环境变量,以便 jenkins 可以控制它们
  • 使用 mocha 的 xunit 报告器生成结果报告
  • 使用 Jenkins 的发布 JUnit 测试结果报告选项来阅读结果报告。

You can read the full article here.

【讨论】:

  • 另外我建议使用 mocha 的 TAP 报告器和 Jenkins 的发布 TAP 结果插件。为什么?因为如果您的 console.log 消息不是有效的 xml,xunit 会出错。 TAP 没有。
【解决方案2】:

JSTestDriver 以符合 xUnit 的 xml 格式输出结果。然后 Hudson 'xUnit' 插件可以解释。

我们计划将 jsTestDriver 集成到 Jenkins 中。在一系列支持的浏览器中测试我们的 JavaScript 代码。

【讨论】:

    【解决方案3】:

    有一个插件可以执行nodejs,可以选择nodejs版本

    https://wiki.jenkins-ci.org/display/JENKINS/NodeJS+Plugin

    【讨论】:

    • 快速浏览这个插件并没有发现任何关于单元测试的信息。你能澄清一下你是如何使用这个插件来做到这一点的吗?
    • 我不知道你是否使用管道,所以这里有所有文档plugins.jenkins.io/nodejs
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-03-28
    • 2016-09-21
    • 2018-06-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多