可以对组合单元测试和集成测试施加最低覆盖率吗?

Can one impose a coverage minimum for combined unit and integration tests?

当我 运行 对我的 sbt 项目进行单元测试时(使用 sbt clean coverage test),我得到的代码覆盖率约为 77%。

当我 运行 集成测试 (sbt clean coverage it:test) 时,我的代码覆盖率约为 10%。

当我 运行 两者 (sbt clean coverage test it:test) 时,我的代码覆盖率约为 84%。

我想设置一个积极的代码覆盖率最小值,如果不满足则构建失败,但是如果我添加这些构建设置:

coverageMinimum := 83
coverageFailOnMinimum := true

...然后 运行 sbt clean coverage test it:test,在单元测试之后检查覆盖率最小值,在集成测试可以 运行 之前,构建失败:

[error] Coverage is below minimum [77.0% < 83.0%]

如果我把it:test放在test之前,那就更糟了([10.0% < 83.0%])。

有什么方法可以规定仅在单元测试和集成测试都具有 运行 后才适用 83% 的最低要求?还是我注定要单独设置我的单元测试可满足的覆盖率最小值,并且始终记得在命令行上将 test 放在 it:test 之前?

自动 post- 版本 1.3.4 中删除了测试覆盖率最小检查(请参阅问题 https://github.com/scoverage/sbt-scoverage/issues/132)。

升级插件版本到最新的1.3.5,并在所有测试后调用coverageReport,例如:

sbt clean coverage test it:test coverageReport