首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用SCCT计算代码覆盖率时,配置文件不在Play Framework 2.0类路径中

使用SCCT计算代码覆盖率时,配置文件不在Play Framework 2.0类路径中
EN

Stack Overflow用户
提问于 2013-03-13 02:00:37
回答 2查看 1.2K关注 0票数 3

我将Play Framework2.0配置为使用SCCT进行覆盖,并且可以使用play scct:cover运行scct。

但是,我的测试无法读取任何配置文件,因为配置文件不在类路径中。也就是说,我正在使用typesafe ConfigFactory加载配置文件,并收到以下错误:com.typesafe.config.ConfigException$Missing: No configuration setting found for key 'KEY.NAME'

play testplay run工作得很好。

有没有办法强制Play的Build.scala将conf/目录添加到类路径中?

我的plugins.sbt文件的相关部分如下所示:resolvers += "Typesafe repository" at "http://repo.typesafe.com/typesafe/releases/"

resolvers += Classpaths.typesafeResolver

resolvers += "scct-github-repository" at "http://mtkopone.github.com/scct/maven-repo"

addSbtPlugin("reaktor" % "sbt-scct" % "0.2-SNAPSHOT")

addSbtPlugin("play" % "sbt-plugin" % "2.0.4")

我的Build.scala的相关部分如下所示:lazy val additionalSettings = Defaults.defaultSettings ++ seq(ScctPlugin.instrumentSettings: _*)

代码语言:javascript
复制
val main = PlayProject(appName, appVersion, appDependencies, mainLang = SCALA, settings = additionalSettings).settings(
    testOptions in Test := Nil,
    parallelExecution in test := false
)

谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-03-19 02:57:16

这可能不是特定于游戏的。scct插件可能应该像对待其他类路径元素一样,将测试配置中的资源包含在ScctTest配置中。您可以通过将conf目录添加到scct的非托管资源目录列表来显式执行此操作:

代码语言:javascript
复制
unmanagedResourceDirectories in ScctPlugin.ScctTest <+= baseDirectory( _ / "conf")
票数 2
EN

Stack Overflow用户

发布于 2014-03-11 05:58:42

Mark的解决方案是正确的,但是我花了一段时间才把他的代码放在正确的位置。对于其他正在努力解决这一问题的人,代码应该如下所示:

代码语言:javascript
复制
val main = play.Project(appName, appVersion, appDependencies, settings = scct_settings).settings(
    ...
    unmanagedResourceDirectories in ScctPlugin.ScctTest <+= baseDirectory ( _ / "conf")
    ...
)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15368681

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档