我是Scala的新手,正在为sbt挣扎并安装东西。例如:
我想在Eclipse中进行开发,因此使用JUnit。根据:
http://www.scalatest.org/user_guide/using_junit_runner
“ ScalaTest包含一个JUnit Runner”,似乎并非如此。至少不适合我。 (当我尝试object is not a member of package org.scalatest
时我得到import org.scalatest.junit.JUnitRunner
,但import org.scalatest.flatspec.AnyFlatSpec
正常工作)
如何安装?我看了看我的sbt文件,其中包含以下行:
libraryDependencies += "org.scalactic" %% "scalactic" % "3.1.1"
libraryDependencies += "org.scalatest" %% "scalatest" % "3.1.1" % "test"
认为还可以,所以我需要org.scalatest.junit并尝试将其添加为:
libraryDependencies += "org.scalatest" %% "junit" % "3.1.1"
当然,这给了我三个(!)屏幕:
Note: Unresolved dependencies path:
[error] sbt.librarymanagement.ResolveException: Error downloading org.scalatest:junit_2.12:3.1.1
[error] Not found
(为什么这么重复?这只是一件事,但没有发现,但抱怨了四遍!)
我如何弄清楚如何安装这样的东西?现在,我正在尝试一种将猜测和随机谷歌搜索结合在一起的方法,有时它可以工作,但有时(像现在这样)对我来说是失败的...
在使用JUnit运行器执行ScalaTest套件的ScalaTest 3.1.x中,将以下依赖项添加到build.sbt
libraryDependencies ++= List(
"org.scalatest" %% "scalatest" % "3.1.1" % Test,
"org.scalatestplus" %% "junit-4-12" % "3.1.1.0" % Test
)
并像这样注释套件
import org.junit.runner.RunWith
import org.scalatestplus.junit.JUnitRunner
import org.scalatest.flatspec.AnyFlatSpec
import org.scalatest.matchers.should.Matchers
@RunWith(classOf[JUnitRunner])
class HelloSpec extends AnyFlatSpec with Matchers {
"The Hello object" should "say hello" in {
Hello.greeting shouldEqual "hello"
}
}
存在更新文档的公开问题:Document how to use JUnitRunner in 3.x #1780