【问题标题】:Running mocha with blanket coverage causes the tests not to run在覆盖范围内运行 mocha 会导致测试不运行
【发布时间】:2015-01-29 00:47:19
【问题描述】:

在我的package.json 中,我有:

  "scripts": {
    "test": "mocha --require blanket -R html-cov > test/coverage.html --compilers coffee:'./node_modules/coffee-script/lib/coffee-script/register'"
  },

所以如果我运行npm test,我会得到:

 npm test

> my-site@1.0.0 test /Users/me/Sites/my-site
> mocha --require blanket -R html-cov > test/coverage.html --compilers coffee:'./node_modules/coffee-script/lib/coffee-script/register'

如果我取出 blanket 的东西 ("test": "mocha --compilers coffee:'./node_modules/coffee-script/lib/coffee-script/register'"),那么我的测试运行正常。

我正在使用CoffeeScript,如果这很重要的话。我做错了什么?

【问题讨论】:

  • 你在使用coffeescript加载器吗?
  • 这是什么意思,我该怎么做?

标签: coffeescript mocha.js blanket.js


【解决方案1】:

据毯documentation

如果您的测试运行程序测试用咖啡脚本编写的源文件, 毯子还盖着你。使用自定义加载器,coffeescript 文件经过编译、检测和测试。

咖啡脚本loader位于node-loaders/coffee-script.js
您需要将以下内容添加到您的package.json

"config": {
    "blanket:" {
        "pattern" : "src", // use the correct pattern for your project
        "loader": "./node-loaders/coffee-script"
    }
}

例如查看一揽子项目package.json 文件。

此外,您用于测试的命令行不正确。它缺少测试文件的路径,并且输出重定向应该在最后。你应该使用类似的东西:

mocha --require blanket -R html-cov --recursive --compilers coffee:./node_modules/coffee-script/lib/coffee-script/register src > test/coverage.html

【讨论】:

  • 我有:` "config": { "blanket": { "pattern": "src", "loader": "./node-loaders/coffee-script" } }` 没有骰子
  • @Shamoon 查看我的答案的补充
  • 就像一个注释,输出重定向不一定必须在最后,对于几乎任何shell。您甚至可以将重定向放在 命令之前。如果您不相信我,请尝试在类 UNIX 上运行 < README.md cat -
猜你喜欢
  • 2015-05-20
  • 2020-08-26
  • 1970-01-01
  • 1970-01-01
  • 2016-11-09
  • 1970-01-01
  • 1970-01-01
  • 2015-12-17
  • 1970-01-01
相关资源
最近更新 更多