我正在使用茉莉和业力来对角组件进行单元测试。我看不到显示所有组件测试结果的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
});
};
答案 0 :(得分:0)
要运行测试并退出,您必须进行以下更改:
// if true, Karma runs tests once and exits
singleRun: true
当前它在您的配置中设置为false,使其无限运行。
除了以下配置外,它对我的配置正常。我没有在业力配置中放置以下代码,因为它需要不包含的其他插件。
htmlReporter: {
outputFile: 'reports/ut/index.html',
pageTitle: 'Unit Tests',
subPageTitle: 'SR-Dashboard',
groupSuites: true,
useCompactStyle: true,
useLegacyStyle: true
},