【问题标题】:Run single test suite with ScalaTest使用 ScalaTest 运行单个测试套件
【发布时间】:2017-05-22 14:16:28
【问题描述】:

我有一个简单的 Scala 2.11.8 + ScalaTest 3.0.1 + SBT 项目。

我想运行一个 ScalaTest Suite 类。我创建了一个简单的示例测试套件org.example.TestSuite

package org.example

import org.scalatest.FunSuite

class TestSuite extends FunSuite {
  test("just a simple example test") {
    assert(1 + 1 === 2)
  }
}

我可以完全独立于 IntelliJ 运行它。

当我尝试在命令行上单独运行时:

sbt test-only org.example.TestSuite

它运行了我所有的测试。

我在这里查看文档:http://www.scalatest.org/user_guide/using_scalatest_with_sbt

它说完全按照我在做的事情,test 运行所有东西,而test-only <qualified suite class names> 只运行指定的套件。但是,它只是不起作用。

这看起来非常简单,但它并不能正常工作并运行所有测试。谢谢!

【问题讨论】:

    标签: scala sbt scalatest


    【解决方案1】:

    在您的命令行中,SBT 将通过将命令和参数括在引号中来接受带有参数的命令:

    sbt 'test-only org.example.TestSuite'
    

    如果你进入 SBT 的命令行,那么你不需要指定引号,只需像这样运行你的命令:

    $ sbt
    > test-only org.example.TestSuite
    

    请注意,最后一个示例是您发布的文档链接中的示例的用途。

    另请注意,在最近的 SBT versions such as 0.13 中,命令调用已更改为 testOnly

    【讨论】:

      猜你喜欢
      • 2014-10-13
      • 2020-07-16
      • 2014-04-28
      • 2018-02-03
      • 2016-11-24
      • 2013-03-23
      • 2014-09-11
      • 2014-02-16
      • 2019-06-09
      相关资源
      最近更新 更多