简体   繁体   中英

Sbt won't run ScalaTest tests

I'm running Scala 2.10.3 and sbt 0.13.5 , and loosely following Twitter's scala sbt tutorial I've run into a minor issue. The unit test won't run at all.

my build.sbt:

libraryDependencies += "org.scalatest" % "scalatest_2.10" % "2.1.7" % "test"

my test class:

package com.twitter.sample

import collection.mutable.Stack
import org.scalatest._

object SimpleParserSpec extends FlatSpec with Matchers {
  "SimpleParser" should "work with basic tweet" in {
    val parser = new SimpleParser
    val tweet = """{"id":1, "text":"foo"}"""
    parser.parse(tweet) match {
      case Some(parsed) => {
        parsed.text should be ("foo")
        parsed.id should be (1)
      }
      case _ => fail("didn't parse tweet")
    }
  }
}

and this is the output of running sbt test in the project folder:

[info] Loading global plugins from C:\Users\Slench\.sbt\0.13\plugins
[info] Set current project to twitter-sbt (in build file:/C:/Users/Slench/Desktop/twitter-sbt/)
[info] Run completed in 36 milliseconds.
[info] Total number of tests run: 0
[info] Suites: completed 0, aborted 0
[info] Tests: succeeded 0, failed 0, canceled 0, ignored 0, pending 0
[info] No tests were executed.
[success] Total time: 0 s, completed 05-06-2014 20:19:11

I'm not sure what's going wrong, all the files are in the correct folders, everything compiles without error or warnings, yet it won't run my test... Any help?

Change your SimpleParserSpec from object to class and it should work.

In particular change the line

//bad
object SimpleParserSpec extends FlatSpec with Matchers

to

//good
class SimpleParserSpec extends FlatSpec with Matchers

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM