当前位置: 首页 > 知识库问答 >
问题:

为什么sbt不运行Scalatest的示例测试?

饶谦
2023-03-14

请假设正常的“新手”的说法。

我使用的是Scala2.12.10;在build.sbt中,我添加了Scalatest:

libraryDependencies += "org.scalatest" %% "scalatest" % "3.0.8" % "test"

我将一些scala.js添加到一个现有的java项目中,这样我的scala源代码路径是正常的,但是我为java和资源创建了一些空目录,并使用了一个不同的目标,这样就不会与现有的代码发生冲突:

javaSource in Compile := baseDirectory.value / "src/main/scalajs_java"
javaSource in Test := baseDirectory.value / "src/test/scalajs_java"

resourceDirectory in Compile := baseDirectory.value / "src/main/scalajs_resources"
resourceDirectory in Test := baseDirectory.value / "src/test/scalajs_resources"

target := baseDirectory.value / "scalajs_target"

我将ScalaTest示例文件exampleSpec.scala放在src/test/scala/exampleSpect.scala中。该示例使用org.scalatest.run运行良好,如http://www.scalatest.org/所述。

sbt:RedsPro-ScalaJS> show test:fullClasspath
[info] * Attributed(/Users/tballard/git/redspro/reds/scalajs_target/scala-2.12/test-classes)
[info] * Attributed(/Users/tballard/git/redspro/reds/scalajs_target/scala-2.12/classes)
[info] * Attributed(/Users/tballard/.ivy2/cache/org.scala-lang/scala-library/jars/scala-library-2.12.10.jar)
[info] * Attributed(/Users/tballard/.ivy2/cache/org.scala-js/scalajs-library_2.12/jars/scalajs-library_2.12-0.6.31.jar)
[info] * Attributed(/Users/tballard/.ivy2/cache/org.scala-js/scalajs-dom_sjs0.6_2.12/jars/scalajs-dom_sjs0.6_2.12-0.9.7.jar)
[info] * Attributed(/Users/tballard/.ivy2/cache/org.scala-js/scalajs-test-bridge_2.12/jars/scalajs-test-bridge_2.12-0.6.31.jar)
[info] * Attributed(/Users/tballard/.ivy2/cache/org.scala-js/scalajs-test-interface_2.12/jars/scalajs-test-interface_2.12-0.6.31.jar)
[info] * Attributed(/Users/tballard/.ivy2/cache/org.scalatest/scalatest_2.12/bundles/scalatest_2.12-3.0.8.jar)
[info] * Attributed(/Users/tballard/.ivy2/cache/org.scalactic/scalactic_2.12/bundles/scalactic_2.12-3.0.8.jar)
[info] * Attributed(/Users/tballard/.ivy2/cache/org.scala-lang/scala-reflect/jars/scala-reflect-2.12.10.jar)
[info] * Attributed(/Users/tballard/.ivy2/cache/org.scala-lang.modules/scala-xml_2.12/bundles/scala-xml_2.12-1.2.0.jar)
> ls scalajs_target/scala-2.12/test-classes/
ExampleSpec.class   ExampleSpec.sjsir   JS_DEPENDENCIES     org/
sbt:RedsPro-ScalaJS>  show definedTestNames
[info] *
[success] Total time: 1 s, completed Dec 1, 2019, 11:37:51 AM

sbt:RedsPro-ScalaJS> testOnly ExampleSpec
[info] Passed: Total 0, Failed 0, Errors 0, Passed 0
[info] No tests to run for Test / testOnly
[success] Total time: 1 s, completed Dec 1, 2019, 12:44:35 PM

共有1个答案

温嘉赐
2023-03-14

依赖Scalatest时,需要使用%%%而不是%%。通常,您总是需要在Scala.js中使用%%%

 类似资料:
  • 我有一个简单的测试设置,如 但当我尝试编译测试时,我会遇到53个错误,比如 实际上并没有传达任何关于问题所在的有用信息。我只能假设在我的构建中没有正确配置某些内容。sbt文件或其他地方。 这段代码确实曾经工作过,在我清理东西的过程中,事情发生了变化,现在它被破坏了,没有好的诊断。 有人能提出要找的东西吗?

  • 我可以跑: 特定的scala测试 右键单击测试并选择 或者如果我以前运行过一次,请选择运行菜单中的测试> null

  • 问题内容: 发生了最奇怪的事情,我的测试运行正常,但现在不再,我完全没有更改代码,这里是一个例外: 问题答案: 我看到您正在使用Eclipse,但您是否还在使用其他外部构建/测试工具,例如Ant或Maven?有时,在同时使用其他外部工具时,Eclipse可能会不同步。 如果使用外部工具,请执行清理生成的工件所需的所有操作(例如mvn clean)。然后刷新Eclipse项目并按照前面的建议进行干净

  • 我只是跟随akka样本,但不能运行程序。 我已经使用自制程序(OSX Mountail Lion)安装了akka、sbt(0.13)、scala(2.10.3) 创建名为AKKA_TEST的空目录 创建build.sbt和hello.scala文件 在akka_test目录中运行sbt,编译命令运行良好 SBT的run命令抱怨没有检测到主类

  • src/main/scala/testing.scala

  • 当我尝试使用sbt 0.13.5(和Java 1.7.0_45)运行时,遇到以下错误: [错误](test:executeTests)java.lang.nosuchmethoderror:scala.predef$.arrowassoc(ljava/lang/object;)ljava/lang/object; 我尝试删除和目录,并在每次删除后执行。 这是完整的堆栈跟踪: