У меня есть простой ScalaTest на основе FunSuite:
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 ==
...
На данный момент я предполагаю, что это просто «шум» (вызванный унифицированным тестовым интерфейсом?) и что я могу спокойно их игнорировать. Но это немного раздражает какую-то внутреннюю часть меня, связанную с ОКР (хотя и не настолько, чтобы я был готов добавить зависимости для других фреймворков).
Это правильное предположение или в моем тестовом/конфигурационном коде есть тонкие ошибки? Если безопасно игнорировать, есть ли какой-либо другой способ подавить эти ошибки, или люди обычно включают все три фреймворка, чтобы они могли выбрать лучший подход для различных тестов?
ТИА, Пол.
(ДОБАВЛЕНО: scala v2.7.7 и sbt v0.7.4)