2

我刚刚将istanbul测试覆盖模块添加到我的 node.js 应用程序中,但是当我运行时(从命令提示符):

> instanbul cover myTests.js

如文档中所述,我得到:

'istanbul' is not recognized as an internal or external command

我在 Windows 7 下。npm 安装没有返回错误。我在文档中看不到有关额外安装步骤的任何内容。

我错过了什么?

4

2 回答 2

5

我看到的问题是当您将项目移动到不同的服务器时。伊斯坦布尔将需要在全球范围内再次安装。这破坏了包管理的 npm 模型。实现这一目标的另一种方法是:

npm install --save-dev istanbul

修改 package.json 脚本条目:

scripts: {

    "coverage": "node ./node_modules/.bin/istanbul ...."
}

然后使用以下命令调用它:

npm coverage

本地机器的快捷方式也是设置环境路径以包含节点可执行文件:

导出 PATH=$PATH:./node_modules/.bin

在这种情况下,由于路径检查,安装到您的包中的任何可执行文件都将自动在命令行上可用。

于 2015-03-04T21:17:06.640 回答
4

要使模块可以在任何地方运行,您需要全局安装它(带有-g选项)。

于 2015-03-04T21:08:19.463 回答