2016-12-14 39 views
0

当使用Java的cobertura-maven-plugin时,我在配置中得到了一个不错的<instrumentation>块,我可以放置非常有用的<ignoreMethodAnnotation>块。如何在使用SBT时配置scove?

自杜松子酒马提尼以来发生的最好的事情。

现在我正在使用scoverage-sbt,但我似乎无法找到我可以配置的位置! build.scala中的可用密钥是有限的。我可以做包排除和文件排除,但没有地方告诉cobertura其他任何东西。

是否有一个-D我可以在SBT命令行上提供,也许?

回答

0

Scoverage ATM中没有类似的配置。

更新:

您可以使用特殊的意见,从分析中排除的代码块:

// $COVERAGE-OFF 
... 
// $COVERAGE-ON$ 
+0

我知道这 - 问题是,这是跨所有测试配置文件,而与注释,可以标记为AC块在一个测试配置文件而不是另一个测试配置文件中因此,我可以有'@ExcludeFromUnitTesting'和'@ExcludeFromIntegrationTesting',他们会表现得相当好。使用$ COVERAGE_OFF $无法区分。 –

0

一种方式来传递参数和命令到SBT的命令行是:

$ sbt 'set coverageEnabled := true' clean coverage test coverageReport coverageAggregate codacyCoverage 

你可以调用SBT一次,然后用空格分隔每个参数或命令。

在这个例子中,我第一次设置属性coverageEnabled := true,然后按顺序运行几个命令:cleancoveragetestcoveraReportcoverageAggregate最后codacyCoverage

请注意,设置这样的属性,您需要附上报表单引号,例如:

$ sbt 'set coverageEnabled := true'... 
相关问题