由于 stryker 分数的原因,Jenkins 构建失败
Jenkins build fail for reason stryker score
目标是当 stryker 得分低于 X 时管道构建失败。
如何在 Jenkins 文件或其他一些方法中配置它?
stryker 会议:
config.set({
mutator: "javascript",
mutate: [...],
testRunner: "jest",
jest: {
projectType: "node",
config: require("jest.config.js"),
enableFindRelatedTests: true,
},
loglevel: "trace",
packageManager: "yarn",
reporters: ["html", "clear-text", "progress", "dashboard"],
transpilers: [],
coverageAnalysis: "off",
});
Jenkins文件片段:
"Stryker test": {
stage('Mutation') {
node("${containerName}") {
container("${containerName}") {
unstash name: 'myApp'
dir("./my") {
sh '''hostname
./node_modules/.bin/stryker run
'''
}
您可以使用 thresholds
配置实现此目的。例如,Stryker 将在分数低于 40 时出现错误(退出代码 1),配置如下:
config.set({
thresholds: { high: 80, low: 60, break: 40 }
...
});
这意味着您的突变得分结果将是:
- 突变分数 >=
80
:太棒了!记者应该给这个涂上绿色和快乐。
- high > mutation score >=
60
:警告!记者应该给这个orange/yellow上色。小心你自己!然而,什么都不会坏。
- 突变得分 <
60
:危险!记者应将其涂成红色。您处于危险之中,但仍然退出代码 0
- 突变得分 <
40
:错误! Stryker 将以退出代码 1 退出,表示构建失败。不过,对记者来说没有任何后果。
目标是当 stryker 得分低于 X 时管道构建失败。 如何在 Jenkins 文件或其他一些方法中配置它?
stryker 会议:
config.set({
mutator: "javascript",
mutate: [...],
testRunner: "jest",
jest: {
projectType: "node",
config: require("jest.config.js"),
enableFindRelatedTests: true,
},
loglevel: "trace",
packageManager: "yarn",
reporters: ["html", "clear-text", "progress", "dashboard"],
transpilers: [],
coverageAnalysis: "off",
});
Jenkins文件片段:
"Stryker test": {
stage('Mutation') {
node("${containerName}") {
container("${containerName}") {
unstash name: 'myApp'
dir("./my") {
sh '''hostname
./node_modules/.bin/stryker run
'''
}
您可以使用 thresholds
配置实现此目的。例如,Stryker 将在分数低于 40 时出现错误(退出代码 1),配置如下:
config.set({
thresholds: { high: 80, low: 60, break: 40 }
...
});
这意味着您的突变得分结果将是:
- 突变分数 >=
80
:太棒了!记者应该给这个涂上绿色和快乐。 - high > mutation score >=
60
:警告!记者应该给这个orange/yellow上色。小心你自己!然而,什么都不会坏。 - 突变得分 <
60
:危险!记者应将其涂成红色。您处于危险之中,但仍然退出代码0
- 突变得分 <
40
:错误! Stryker 将以退出代码 1 退出,表示构建失败。不过,对记者来说没有任何后果。