从Karma.js获得Jenkins的百分比覆盖率
我正在运行karma.js进行单元测试并与jenkins管道集成。我的目标是读取Karma抛出的错误类型,如果它是与我想要终止作业的百分比相关的错误,否则即使存在其他错误,如单元测试失败等,也要继续(这是一个要求,并且有原因) 我没有找到一个方法来做这件事。任何想法都很感激从Karma.js获得Jenkins的百分比覆盖率,jenkins,karma-runner,xunit,karma-coverage,Jenkins,Karma Runner,Xunit,Karma Coverage,我正在运行karma.js进行单元测试并与jenkins管道集成。我的目标是读取Karma抛出的错误类型,如果它是与我想要终止作业的百分比相关的错误,否则即使存在其他错误,如单元测试失败等,也要继续(这是一个要求,并且有原因) 我没有找到一个方法来做这件事。任何想法都很感激 karma start ibx-test/olb/karma.conf.js --browsers PhantomJS --log-level warn --single-run coverageReporter: {
karma start ibx-test/olb/karma.conf.js --browsers PhantomJS --log-level warn --single-run
coverageReporter: {
type: 'lcov',
dir: 'unit-tests/coverage/',
check: {
global: {
lines: 100 //This is just for testing
}
}
}
16:17:43[单元测试]09 03 2017 21:17:43.024:错误[覆盖范围]:
PhantomJS 2.1.1(Linux 0.0.0):对行的覆盖率(90.33%)没有
达到全球阈值(100%)
编辑:我在“构建步骤”下的管道语法中找到了“ProcessXUnitTestResultReport”,我能以某种方式使用它吗?因果报应和许妮特之间有关联吗?我找到了一种方法。“ProcessXUnitTestResultReport”正是有助于做到这一点。我检查了管道语法,它给了我下面的脚本,它成功了
step([$class: 'XUnitBuilder', testTimeMargin: '3000', thresholdMode: 1,
thresholds: [
[$class: 'FailedThreshold', failureNewThreshold: '',
failureThreshold: '2', unstableNewThreshold: '',
unstableThreshold: '1'],
[$class: 'SkippedThreshold', failureNewThreshold: '',
failureThreshold: '', unstableNewThreshold: '',
unstableThreshold: '']],
tools: [[$class: 'JUnitType', deleteOutputFiles: false,
failIfNotNew: false, pattern: 'ibx-test/reports/unit-tests/PhantomJS_2.1.1_(Linux_0.0.0)/ibx-test/reports/unit-tests/*.xml',
skipNoTestFiles: false, stopProcessingIfError: false]]])
- thresholdMode:表示将用于阈值的(失败或跳过的)测试数。1表示数字,2表示百分比。我使用了1,所以我可以只让一个测试失败,然后得到期望的结果
- FailedThreshold:用于设置失败阈值的类
- SkippedThreshold:可用于跳过的测试。我还没用呢