我有一个简单的基于 FunSuite
的 ScalaTest:
package pdbartlett.hello_sbt
import org.scalatest.FunSuite
class SanityTest extends FunSuite {
test("a simple test") {
assert(true)
}
test("a very slightly more complicated test - purposely fails") {
assert(42 === (6 * 9))
}
}
我正在使用以下 SBT 项目配置运行:
import sbt._
class HelloSbtProject(info: ProjectInfo) extends DefaultProject(info) {
// Dummy action, just to show config working OK.
lazy val solveQ = task { println("42"); None }
// Managed dependencies
val scalatest = "org.scalatest" % "scalatest" % "1.0" % "test"
}
但是,当我运行
sbt test
时,我收到以下警告:...
[info] == test-compile ==
[info] Source analysis: 0 new/modified, 0 indirectly invalidated, 0 removed.
[info] Compiling test sources...
[info] Nothing to compile.
[warn] Could not load superclass 'org.scalacheck.Properties' : java.lang.ClassNotFoundException: org.scalacheck.Properties
[warn] Could not load superclass 'org.specs.Specification' : java.lang.ClassNotFoundException: org.specs.Specification
[warn] Could not load superclass 'org.specs.Specification' : java.lang.ClassNotFoundException: org.specs.Specification
[info] Post-analysis: 3 classes.
[info] == test-compile ==
...
目前我假设这些只是“噪音”(由统一测试接口(interface)引起?),我可以放心地忽略它们。但这对我内心的某些强制症患者来说有点烦人(尽管我准备为其他框架添加依赖关系并没有那么烦人)。
这是一个正确的假设,还是我的测试/配置代码中存在细微的错误?如果忽略是安全的,有没有其他方法可以抑制这些错误,或者人们是否经常包含所有三个框架,以便他们可以为不同的测试选择最佳方法?
TIA,
保罗。
(添加:scala v2.7.7 和 sbt v0.7.4)
最佳答案
Mark Harrah 说忽略它是安全的,本应在 0.7.4 之前修复,但他忘记了。
关于scala - 在 ScalaTest 中使用 SBT 时,可以安全地忽略 ScalaCheck/Specs 警告吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3054393/