因此,有了本教程,我决定在我的 node.js 应用程序中添加一些单元测试。我的 gruntfile 似乎没问题,当我键入时,grunt nodeunit
我唯一的测试运行得很好,但在那之后,它崩溃并出现错误Fatal error: Cannot find module 'tap'
:
$> grunt nodeunit
Running "nodeunit:all" (nodeunit) task
Testing db.test.js
.OK
Fatal error: Cannot find module 'tap'
我对这个模块一无所知,但是在谷歌搜索之后,它似乎是 nodeunit 需要的东西。事实上,它确实存在:$MY_NODE_APP/node_modules/nodeunit/node_modules/tap
存在,当我启动节点$MY_NODE_APP/node_modules/nodeunit
并require('tap')
在交互式控制台中输入时,我得到一些包含很多东西的对象,这给我的印象是它可以正常工作。
所以,显而易见的问题是:为什么我会收到这个错误,我该如何解决?
咕噜文件:
module.exports = function(grunt) {
grunt.initConfig({
nodeunit: {
all: ['./**/*.test.js']
}
});
grunt.loadNpmTasks('grunt-contrib-nodeunit');
};
更新:安装tap
到我的项目中,但也没有帮助。