运行茉莉花测试时无法查看kjhtml报告

时间:2018-06-27 13:14:20

标签: angular karma-jasmine

我正在使用茉莉和业力来对角组件进行单元测试。我看不到显示所有组件测试结果的html报告,而是在执行组件的单元测试时看到每个组件的html文档。我需要做哪些配置才能在浏览器中以kjhtml报告的形式获得单元测试结果。另外,我的测试运行了无数次,我应该如何配置业力仅执行一次测试。

下面是我的karma-config.json文件

  module.exports = function (config) {
  config.set({
    basePath: '',
    frameworks: ['jasmine', '@angular/cli'],
    plugins: [
      require('karma-jasmine'),
      require('karma-chrome-launcher'),
      require('karma-jasmine-html-reporter'),
      require('karma-coverage-istanbul-reporter'),
      require('@angular/cli/plugins/karma')
    ],
    client: {
      clearContext: false // leave Jasmine Spec Runner output visible in browser
    },
    htmlReporter: {
      outputFile: 'reports/ut/index.html',
      pageTitle: 'Unit Tests',
      subPageTitle: 'SR-Dashboard',
      groupSuites: true,
      useCompactStyle: true,
      useLegacyStyle: true
    },
    coverageIstanbulReporter: {
      reports: ['html', 'lcovonly'],
      fixWebpackSourcePaths: true
    },
    angularCli: {
      environment: 'dev'
    },
    reporters: ['progress', 'kjhtml'],
    port: 9876,
    colors: true,
    logLevel: config.LOG_INFO,
    autoWatch: true,
    browsers: ['Chrome'],
    singleRun: false
  });
}; 

1 个答案:

答案 0 :(得分:0)

要运行测试并退出,您必须进行以下更改:

// if true, Karma runs tests once and exits
singleRun: true

当前它在您的配置中设置为false,使其无限运行。

关于未在浏览器中打印的kjhtml报告

除了以下配置外,它对我的​​配置正常。我没有在业力配置中放置以下代码,因为它需要不包含的其他插件。

htmlReporter: { outputFile: 'reports/ut/index.html', pageTitle: 'Unit Tests', subPageTitle: 'SR-Dashboard', groupSuites: true, useCompactStyle: true, useLegacyStyle: true },