如何使用Play Framework 2.3配置jacoco4sbt
我决定使用jacoco4sbt作为我们Play2.3项目的Java代码覆盖工具。我按照中的说明进行操作,但由于某些原因,当我执行如何使用Play Framework 2.3配置jacoco4sbt,sbt,playframework-2.3,jacoco,Sbt,Playframework 2.3,Jacoco,我决定使用jacoco4sbt作为我们Play2.3项目的Java代码覆盖工具。我按照中的说明进行操作,但由于某些原因,当我执行activator jacoco:coverage时,一些测试失败,并且没有生成覆盖率报告。当我运行激活器测试时,所有单元测试都通过。在我的build.sbt文件中 jacoco.settings jacoco.Config中的并行执行:=false libraryDependencies++=Seq( javaJdbc, 爪哇人, 隐藏物 javaWs, “com.g
activator jacoco:coverage
时,一些测试失败,并且没有生成覆盖率报告。当我运行激活器测试时,所有单元测试都通过。在我的build.sbt文件中
jacoco.settings
jacoco.Config中的并行执行:=false
libraryDependencies++=Seq(
javaJdbc,
爪哇人,
隐藏物
javaWs,
“com.google.inject”%“guice”%“3.0”,
“com.github.fge”%”json模式验证程序“%”2.1.7“,
“org.openl”%”org.openl.core“%”5.13.2“,
“org.openl.rules”%”org.openl.rules“%”5.13.2“
然而,当我运行jacoco:parallelExecution时,它仍然是真的。在我的plugins.sbt文件中,我添加了addSbtPlugin(“de.johoop“%”jacoco4sbt“%”2.1.6”)
当我在activator中运行jacoco:report
时,我得到以下错误(jacoco:report)java.io.FileNotFoundException:C:\users\me\project\target\scala-2.11\jacoco\jacoco.exec(系统找不到指定的文件)
当我到处跑的时候,我会
[info] This is sbt 0.13.5
[info] The current project is {file:/C:/Users/me/project/}root 20 15.03.10.04.21.a5de5e0
[info] The current project is built against Scala 2.11.4
[info] Available Plugins: sbt.plugins.IvyPlugin, sbt.plugins.JvmPlugin, sbt.plugins.CorePlugin, sbt.plugins.JUnitXmlReportPlugin, play.Play, play.PlayJava, play .PlayScala, play.twirl.sbt.SbtTwirl, com.typesafe.sbt.jse.SbtJsEngine, com.types afe.sbt.jse.SbtJsTask, com.typesafe.sbt.web.SbtWeb, com.typesafe.sbt.webdriver.S btWebDriver, com.typesafe.sbt.SbtEcho, org.sbtidea.SbtIdeaPlugin, com.typesafe.sbteclipse.plugin.EclipsePlugin, com.typesafe.sbt.SbtNativePackager, com.typesafe .sbt.SbtGit, de.johoop.jacoco4sbt.JacocoPlugin
[info] sbt, sbt plugins, and build definitions are using Scala 2.10.4
我需要一个特定的jacoco配置文件吗?如果需要,在哪里?
我注意到执行
jacoco:test
会成功地运行测试。之后,当我运行jacoco:report
时,我得到了我提到的同一个file not found错误 由于测试失败,没有生成jacoco.exec文件。为了生成代码覆盖率报告,您必须没有任何失败的测试。在我意识到这一点并修复了测试之后,我就能够生成报告。我也遇到了。。。来自activator jacoco:cover的错误消息没有帮助,因为它们给出了完全不相关的错误。