![](/img/trans.png)
[英]Add angular controllers to karma-coverage (Istanbul) code coverage preprocessor
[英]Setting Target Code Coverage with Karma/Istanbul
我正在使用 Karma-Coverage(Istanbul) 運行 Karma Maven 插件以進行代碼覆蓋。 Karma-Coverage 似乎默認為 80% 所需(建議?)代碼覆蓋率,但是我想在項目中強制執行 90% 的代碼覆蓋率。 但是,我不知道在哪里設置它。
有沒有辦法通過 Karma/Istanbul 強制執行目標代碼覆蓋率?
這記錄在repo的docs 文件中。 查找有關“檢查”屬性的部分。
這將用於配置覆蓋結果的最低閾值強制執行。 如果未達到閾值,業力將返回失敗。 閾值,當指定為正數時,被視為所需的最小百分比。 當閾值指定為負數時,它表示允許的未覆蓋實體的最大數量。
例如,
statements: 90
表示最小語句覆蓋率為 90%。statements: -10
表示允許的未覆蓋語句不超過 10 個。
global
適用於所有文件,each
文件都適用於each
文件。 可以通過exclude
屬性從強制執行中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 引用的代碼,您會看到 karma 正在執行相當標准的選項合並,這意味着您不必重新創建整個檢查對象。 只是你關心的價值觀。 默認值為 0。
使用檢查選項作為@SeanH 的答案。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.