Scala的简单构建工具似乎没有运行测试

时间:2010-04-22 13:35:37

标签: scala sbt

我已经使用sbt创建了一个项目,因此进行了配置:

val scalatest = "org.scala-tools.testing" % "scalatest" % "0.9.5" % "test"

然后我将示例从ScalaTest粘贴到一个文件中并运行“sbt test”以查看它是否正常工作。文件编译,但测试永远不会执行。

据我所知,这就像它的意思一样简单。我错过了什么吗?

1 个答案:

答案 0 :(得分:2)

首先,我认为根据他们的网站1.0是正确的版本。我的project/build/def.scala看起来像这样:

import sbt._

class Tests(info: ProjectInfo) extends DefaultProject(info) {
  val scalatest = "org.scalatest" % "scalatest" % "1.0" % "test"
}

然后执行sbt update,然后执行sbt reload(不确定是否需要重新加载,但不会造成伤害)

现在在/src/test/scala,使用他们的示例,但也导入scala.collection.mutable.Stack sbt test对我来说很好用

jcdavis@seam-carver:~/dev/test2$ sbt test
[info] Building project test 1.0 using Tests
[info]    with sbt 0.5.6 and Scala 2.7.7
[info] 
[info] == compile ==
[info]   Source analysis: 0 new/modified, 0 indirectly invalidated, 0 removed.
[info] Compiling main sources...
[info] Nothing to compile.
[info]   Post-analysis: 0 classes.
[info] == compile ==
[info] 
[info] == copy-test-resources ==
[info] == copy-test-resources ==
[info] 
[info] == copy-resources ==
[info] == copy-resources ==
[info] 
[info] == test-compile ==
[info]   Source analysis: 0 new/modified, 0 indirectly invalidated, 0 removed.
[info] Compiling test sources...
[info] Nothing to compile.
[info]   Post-analysis: 4 classes.
[info] == test-compile ==
[info] 
[info] == test-start ==
[info] == test-start ==
[info] 
[info] == StackSpec ==
[info] A Stack
[info] Test Starting - A Stack should pop values in last-in-first-out order
[info] Test Succeeded - A Stack should pop values in last-in-first-out order
[info] Test Starting - A Stack should throw NoSuchElementException if an empty stack is popped
[info] Test Succeeded - A Stack should throw NoSuchElementException if an empty stack is popped
[info] == StackSpec ==
[info] 
[info] == test-complete ==
[info] == test-complete ==
[info] 
[info] == test-finish ==
[info] Run: 2, Passed: 2, Errors: 0, Failed: 0
[info]  
[info] All tests PASSED.
[info] == test-finish ==
[info] 
[info] == test-cleanup ==
[info] == test-cleanup ==
[info] 
[info] == test ==
[info] == test ==
[success] Successful.