需要适当的记者为业力茉莉花

blo*_*oop 38 javascript node.js karma-runner karma-jasmine

我有一个相当简单的karma.config.js文件

basePath = '../';


files = [
  JASMINE,
  JASMINE_ADAPTER,
  'js/lib/angular*.js',
  'test/lib/angular/angular-mocks.js',
  'js/**/*.js',
  'test/unit/**/*.js'
];

autoWatch = true;
browsers = ['PhantomJS'];
Run Code Online (Sandbox Code Playgroud)


当我跑步时,karma start config/karma.conf.js --single-run我得到以下输出

$ karma start config/karma.conf.js --single-run
[2013-06-24 23:47:08.750] [DEBUG] config - autoWatch set to false, because of singleRun
INFO [karma]: Karma server started at http://localhost:9876/
INFO [launcher]: Starting browser PhantomJS
INFO [PhantomJS 1.9 (Mac)]: Connected on socket id LwMoWxzIbSUuBsvIqB_m
PhantomJS 1.9 (Mac): Executed 6 of 6 SUCCESS (0.073 secs / 0.02 secs)
Run Code Online (Sandbox Code Playgroud)

我一直在寻找一些东西来告诉我如何获得记录的测试输出(例如SUCCESS Unit: services myService should behave)

我可以看到测试输出的唯一方法是打开Chrome并单击"Debug",然后显示开发人员工具控制台.我希望将消息记录到终端,但我无法弄清楚如何使其正常工作.

blo*_*oop 72

通过安装karma-spec-reporter修复

npm install karma-spec-reporter --save-dev

并添加我的karma.config.js

reporters: ['spec'],

根据业力文件

默认情况下,Karma会将所有兄弟姐妹模块加载到它,并且它们的名称与karma-*匹配.

但有些用户不得不在配置中添加以下内容

plugins: ['karma-spec-reporter']

  • 直到我在karma.conf.js文件中指定karma-spec-reporter作为插件,它才对我有效; 这就是我的插件阵列看起来如何插件:['karma-chrome-launcher','karma-coverage','karma-firefox-launcher','karma-jasmine','karma-junit-reporter','karma-spec -reporter'],最后请注意karma-spec-reporter (7认同)

Fer*_*isi 9

另一个细节 - 如果您在karma.config.js 中保留默认报告器“进度” ,如下所示:

reporters: ["progress", "spec"]
Run Code Online (Sandbox Code Playgroud)

或其他控制台报告器,“规范”报告器输出将不起作用。

您应该只保留“规范”一个,或者与其他浏览器报告者一起保留“规范”。例如:

reporters: ["spec", "coverage"]
Run Code Online (Sandbox Code Playgroud)