我使用Karma-Coverage(伊斯坦布爾)運行Karma Maven插件來獲取代碼覆蓋率。 Karma-Coverage的默認代碼覆蓋率爲80%,但是我想在項目中強制執行90%的代碼覆蓋率。但是,我無法弄清楚在哪裏設置。使用Karma/Istanbul設置目標代碼覆蓋率
有沒有一種方法來強制Karma /伊斯坦布爾的目標代碼覆蓋率?
我使用Karma-Coverage(伊斯坦布爾)運行Karma Maven插件來獲取代碼覆蓋率。 Karma-Coverage的默認代碼覆蓋率爲80%,但是我想在項目中強制執行90%的代碼覆蓋率。但是,我無法弄清楚在哪裏設置。使用Karma/Istanbul設置目標代碼覆蓋率
有沒有一種方法來強制Karma /伊斯坦布爾的目標代碼覆蓋率?
使用check選項作爲@ SeanH的答案。
這是記錄在docs file in the repo.查找「檢查」屬性的部分。
這將用於配置覆蓋率結果的最小閾值強制。如果沒有達到閾值,業力將返回失敗。當指定爲正數時,閾值被視爲所需的最小百分比。當閾值被指定爲負數時,它表示允許的未覆蓋實體的最大數量。例如,
statements: 90
意味着最小語句覆蓋率爲90%。statements: -10
意味着不允許超過10個未被覆蓋的陳述。
global
適用於所有文件一起和each
在每個文件的基礎上。可以通過exclude
屬性從執行中排除文件或模式列表。在每個文件或模式的基礎上,可以通過overrides
屬性覆蓋每個文件的閾值。
coverageReporter: {
check: {
global: {
statements: 50,
branches: 50,
functions: 50,
lines: 50,
excludes: [
'foo/bar/**/*.js'
]
},
each: {
statements: 50,
branches: 50,
functions: 50,
lines: 50,
excludes: [
'other/directory/**/*.js'
],
overrides: {
'baz/component/**/*.js': {
statements: 98
}
}
}
}
}
如果您在通過@MarcoCI引用的代碼看,你會看到業力是做一個相當標準的選擇合併,這意味着你不必重新創建整個檢查對象。只是你關心的價值觀。缺省值爲0.
水印屬性與記錄器輸出的閾值有關,而不是如果不滿足閾值使測試失敗。 – SeanH
我明白了。然後我會更新答案。 – MarcoL