【问题标题】:Karma mocha and jscoverageKarma mocha 和 jscoverage
【发布时间】:2013-07-26 01:47:39
【问题描述】:

我们有一个使用 node.js 用咖啡脚本编写的应用程序,并且正在努力设置代码覆盖工具。

目前,我们已经为服务器端启动并运行代码覆盖

  • 咖啡覆盖率
  • jscoverage
  • 摩卡

前端单元测试是带有 karma 测试运行器和 mocha 的功能,并且运行良好。但我似乎无法找到一种方法来从业力中获得相同类型的输出。

这是用于服务器端的命令:

mocha --compilers coffee:coffee-script --require chai --reporter html-cov --recursive test/mocha > coverage.html

似乎因为前端也在 mocha 和 coffee-script 中,所以我们应该能够在那里做同样的事情。但是 karma 不支持html-cov 记者,这让我陷入了某种死胡同。

理想的路径是 karma 在 phantomjs 中正常运行并使用 mocha html-cov 报告器输出 html 文件。有谁知道要从这里出发吗?

Here 是我在服务器端的 Cake 任务的一部分,仅供参考。

【问题讨论】:

    标签: node.js coffeescript mocha.js karma-runner jscoverage


    【解决方案1】:

    karma-coverage 插件使用 Istanbul 来检测源文件并生成覆盖率报告。

    还有一个悬而未决的问题,为咖啡脚本启用同样的功能https://github.com/karma-runner/karma/issues/622

    【讨论】:

    • 有趣。我很快就会对此进行测试。
    • 我想我只需要等待合并。
    【解决方案2】:

    我强烈建议从 jscoverage 切换到 istanbul 来计算代码覆盖率。 istanbul 支持 mocha(一定要调用 _mocha)并且是 karma 的默认代码覆盖工具。详情在这里:Code coverage with Mocha

    【讨论】:

    • 我遇到的唯一问题是 istanbul mocha 模式似乎不提供咖啡脚本支持。理想情况下,我希望覆盖报告对应于真实的源代码而不是呈现的源代码。
    • 可以理解。你试过这个吗? github.com/gotwarlost/istanbul/issues/43
    • 我确实看过。然而,业力似乎并不支持伊斯坦布尔的那种味道。
    猜你喜欢
    • 1970-01-01
    • 2016-06-13
    • 1970-01-01
    • 1970-01-01
    • 2018-07-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多