2016-12-14 107 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'... 
相關問題