关于上一个问题,我希望有多个测试文件夹用于不同类型的测试,并且能够通过单独的SBT操作执行每个文件夹中包含的测试。
例如,“test-unit”操作将仅运行文件夹src/test/scala/unit下包含的测试,而“test-functional”操作将仅运行src/test/scala/functional下的测试。我们将如何编写动作来做到这一点?
如果您使用的是0.10.0,则可以通过在文件夹中的 Scala 文件中定义完整的构建配置xsbt
来轻松创建其他测试配置project
。下面是集成测试的 wiki 示例。默认目录布局与您的有点不同,单元测试在src/test/scala中,集成测试在src/it/scala中。然后,您可以从控制台运行test
以执行单元测试或it:test
集成测试。
import sbt._
import Keys._
object B extends Build
{
lazy val root =
Project("root", file("."))
.configs( IntegrationTest )
.settings( Defaults.itSettings : _*)
.settings( libraryDependencies += specs )
lazy val specs = "org.scala-tools.testing" %% "specs" % "1.6.8" % "it"
}