如何用Karma(testacular)testingnodejs后端代码

如何设置Karma来运行我的后端unit testing(使用Mocha编写)? 如果我将后端testing脚本添加到files = [] ,则会失败,说明require是未定义的。

你没有。 噶仅用于testing基于浏览器的代码。 如果你有一个项目在后端和上一个karma / mocha摩卡testing,尝试在脚本下编辑你的package.json来设置testing: mocha -R spec && karma run karma.con

然后,如果npm test返回true,您将知道提交或部署是安全的。

这似乎是不能做(谢谢@dankohn)。 这是我使用Grunt的解决scheme:

  • 噶:更新你的karma.conf.js文件

    • 设置autoWatch = false;
    • 设置singleRun = true;
    • 设置browsers = ['PhantomJS']; (有内联结果)
  • 咕噜:

    • npm install grunt-contrib-watch grunt-simple-mocha grunt-karma
    • configuration两个grunt任务(请参阅下面的grunt文件)

Gruntfile.js:

 module.exports = function (grunt) { grunt.loadNpmTasks('grunt-simple-mocha'); grunt.loadNpmTasks('grunt-karma'); grunt.initConfig({ simplemocha: { backend: { src: 'test/server-tests.js' } }, karma: { unit: { configFile: 'karma.conf.js' } } }); // Default task. grunt.registerTask('default', ['simplemocha', 'karma']); }; 
  • Grunt(可选):设置grunt-watch开始testing更改testing文件或规格本身。

  • 运行全部使用grunt命令。