dk1*_*k14 12 junit sbt scalatest
Maven surefire-plugin不运行集成测试(按照惯例命名为"IT"后缀),但sbt同时运行:unit和integration.那么,如何防止这种行为呢?是否存在区分ScalaTest的集成和单元测试的常用方法(默认情况下不运行FeatureSpec-tests)
Sch*_*rdt 19
如何做到这一点恰好记录在SBT手册上http://www.scala-sbt.org/release/docs/Detailed-Topics/Testing#additional-test-configurations-with-shared-sources:
//Build.scala
import sbt._
import Keys._
object B extends Build {
lazy val root =
Project("root", file("."))
.configs( FunTest )
.settings( inConfig(FunTest)(Defaults.testTasks) : _*)
.settings(
libraryDependencies += specs,
testOptions in Test := Seq(Tests.Filter(itFilter)),
testOptions in FunTest := Seq(Tests.Filter(unitFilter))
)
def itFilter(name: String): Boolean = name endsWith "ITest"
def unitFilter(name: String): Boolean = (name endsWith "Test") && !itFilter(name)
lazy val FunTest = config("fun") extend(Test)
lazy val specs = "org.scala-tools.testing" %% "specs" % "1.6.8" % "test"
}
Run Code Online (Sandbox Code Playgroud)
要求sbt test进行单元测试和sbt fun:test集成测试以及sbt test fun:test两者.
| 归档时间: |
|
| 查看次数: |
4177 次 |
| 最近记录: |