使用Scalatest从打包的二进制文件执行PlaySpec测试

Bre*_*ett 7 scalatest

我有一个功能测试的Play项目.我能够用SBT执行测试.他们正在使用浏览器针对已部署的应用程序进行测试,即with OneServerPerSuite with OneBrowserPerSuite ...

我不想使用SBT /从源代码执行测试,而是编译和打包它们并从二进制文件运行.但是,如果我打包测试类(test: package在SBT中)并运行它们,则不执行任何测试,例如,如果我将所有依赖项复制到libs包括scala,ScalaTest等:

$ java -cp target/scala-2.10/myproject-acceptance_2.10-1.0-tests.jar:libs/* org.scalatest.tools.Runner -o -u results
Discovery starting.
Discovery completed in 20 milliseconds.
Run starting. Expected test count is: 0
DiscoverySuite:
Run completed in 57 milliseconds.
Total number of tests run: 0
Suites: completed 1, aborted 0
Tests: succeeded 0, failed 0, canceled 0, ignored 0, pending 0
Run Code Online (Sandbox Code Playgroud)

我无法进行任何测试.我已经试过-s,-m,-w,-q可切换斯卡拉测试运行.我最接近测试运行的是指定后缀(例如"MyWebappLogin")

$ ... Runner -o -u results -q Login
Suites: completed 1, aborted 0
Tests: succeeded 0, failed 0, canceled 0, ignored 0, pending 0
Run Code Online (Sandbox Code Playgroud)

测试本身基于Play-Scala Functional Testing的指南

这是我正在尝试的登录测试(MyWebappLogin.scala):

class MyWebappLogin extends PlaySpec with OneServerPerSuite with OneBrowserPerSuite with PhantomJSFactory with MustMatchers {

  val loginPage = new WebappLoginPage() //extends org.scalatest.selenium.Page with WebBrowser

  "The Login Page" must {
    "Render with title" in {
      go to (loginPage)
      pageTitle mustEqual "Please Log In"
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

如何让测试与ScalaTest跑步者一起运行?