karma-runner - test - npm mocha




karma test runner在控制台中詳細測試報告 (4)

來自@CarlesBarrobés的回答。 最初的問題是談論角度應用。 所以我想我會列出ng testng test一起工作的步驟

安裝詳細記者:

npm install --save-dev karma-verbose-reporter

更新您的karma.conf.js文件以包含以下內容:

module.exports = function (config) {
  config.set({
    plugins: [
      require('karma-verbose-reporter')
    ],
    reporters: ['verbose']
  });
};

注意,我只包含與報告相關的設置,當然,將其他設置保留在配置文件中。

現在您可以運行ng test來獲得詳細輸出

我剛開始用單元測試我的角度應用程序與業力。 一切都按預期工作

Chrome 26.0(Windows):執行1的1
Chrome 26.0(Windows):執行1次成功1次(0.878秒/ 0.112秒)

但是,有沒有辦法輸出有關測試結果的更多信息。 例如,它正在執行的Suite和測試名稱及其結果。 我已經閱讀了很少的教程,其中Jasmine測試結果在瀏覽器中輸出。 我想知道它也可以在業力中實現。


我剛剛為Karma完成了一個HTML記者,所以你可以把它添加到記者那裡。 您將在控制台中獲得一些其他信息,但您可以在配置中使用“singleRun = true”。 該插件位於:

https://npmjs.org/package/karma-htmlfile-reporter

通過“npm install karma-htmlfile-reporter -g”安裝插件後,您只需要在karma.conf.js中添加一些行:

reporters: ['progress', 'html'],

htmlReporter: {
  outputFile: 'tests/units.html'
},

plugins: [
  // ... your other plugins here
  'karma-htmlfile-reporter'
]

現在,在運行Karma測試之後,插件將生成一個樣式化的HTML文件,您可以在瀏覽器中查看。


我正在尋找類似的東西,並找到了這個: https://github.com/usrz/javascript-karma-verbose-reporterhttps://github.com/usrz/javascript-karma-verbose-reporter 。 生成這種輸出:

$ karma start --reporters=verbose

Suites and tests results:

 - the app.router.config module :
   * contains a router property : ok
   * configures the router title : ok
   * should have a login route : ok
 - the organization module :
   * contains a state property : ok
   * should have a streams route after configuration : ok
   * when activated, should set state based on organization in route : ok
 - the streams module :
   * points to state : ok
   * loads organization streams upon activation : ok
   * loads organization streams via API : ok

Browser results:

 - PhantomJS 1.9.8 (Mac OS X 0.0.0): 9 tests
   - 9 ok

要使其成為默認選項,您可以將其添加到您的karma配置中,例如:

reporters: ['verbose', 'junit']

我認為這個Documention可能會幫助您在控制台中配置其輸出。

如上所述:

reporters: ['progress', 'junit']
  • “進度”用於控制台中的輸出
  • 'junit'是外部文件輸出的karma插件。 :)