问题
In relation to a previous question, I'd like to have multiple test folders for different types of test and be able to execute the tests contained in each folder with a separate SBT action.
For example, an action 'test-unit' would run only the tests contained under the folder src/test/scala/unit, and a 'test-functional' action would run only the tests under src/test/scala/functional. How would we write actions to do this?
回答1:
If you are using xsbt
0.10.0, you can easily create additional test configurations by defining the a full build configuration in a Scala file located in your project
folder. Below is the wiki example for integration tests. The default directory layout is a bit different from yours, unit tests go in src/test/scala and integration tests in src/it/scala. From the console, you can then run test
to execute unit tests or it:test
for integration tests.
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"
}
来源:https://stackoverflow.com/questions/6224273/setting-up-actions-for-multiple-test-folders-in-sbt