2013-08-03 26 views
5

我正在使用Karma進行一些單元測試並生成代碼覆蓋率統計信息。 當我從命令行運行測試而沒有在karma配置中的代碼覆蓋設置時,我可以在命令行中看到測試結果。即添加代碼覆蓋後,Karma命令行不顯示測試結果

Executed 3 of 3 SUCCESS (0.465 secs/0.048 secs) 

當我添加的代碼覆蓋率設置的配置和運行測試,獲取生成覆蓋率文件,但我沒有看到在命令行的測試結果。

我的配置是:

basePath = '../'; 

files = [ 
    JASMINE, 
    JASMINE_ADAPTER, 
    'https://ajax.googleapis.com/ajax/libs/angularjs/1.0.1/angular.min.js', 
    'app/lib/angular/angular.js', 
    'app/lib/angular/angular-scenario.js', 
    'test/lib/angular/angular-mocks.js', 
    'app.js',  // include app first as other module hang off it 
    'public/javascript/**/*.js', 
    'test/unit/**/*.js' 
]; 

/* code coverage settings */ 
preprocessors = { 
    '**/public/javascript/**/*.js': 'coverage' 
}; 

reporters = ['coverage']; 
/* end code coverage settings */ 

autoWatch = true; 

browsers = ['Chrome']; 

junitReporter = { 
    outputFile: 'test_out/unit.xml', 
    suite: 'unit' 
}; 

我可以創建單獨的腳本來生成代碼覆蓋率和運行測試,並且我會更好做,在速度等方面,但我想知道我可以一起做,如果有的話,我錯過配置的東西?

回答

4

當您在配置中添加「coverage」記者時,似乎您刪除了默認情況下曾經在那裏的「進度」記者。

你的配置的部分記者剛剛更改爲:的reporters = ['coverage','progress']代替reporters = ['coverage']

+0

謝謝!至少在我的'yo angular-generator'項目中,沒有'reporter =''progress']'默認值,所以這覆蓋了一個隱藏的默認值。我應該把這個問題報告給業力。 – vertti

相關問題