gpt4 book ai didi

junit - 如何防止 sbt 运行集成测试?

转载 作者:行者123 更新时间:2023-12-04 00:39:03 25 4
gpt4 key购买 nike

Maven surefire-plugin 不运行集成测试(它们按照惯例以“IT”后缀命名),但 sbt 运行:单元和集成。那么,如何防止这种行为呢?是否有一种通用的方法来区分 ScalaTest 的集成和单元测试(默认情况下不运行 FeatureSpec-tests)

最佳答案

如何做到这一点在 http://www.scala-sbt.org/release/docs/Detailed-Topics/Testing#additional-test-configurations-with-shared-sources 上的 sbt 手册中有详细说明。 :

//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"
}

调用 sbt test用于单元测试和 sbt fun:test用于集成测试和 sbt test fun:test对彼此而言。

关于junit - 如何防止 sbt 运行集成测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13877892/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com