Scala Language
Testowanie za pomocą ScalaTest
Szukaj…
Hello World Spec Test
Utwórz klasę testową w katalogu src/test/scala
w pliku o nazwie HelloWorldSpec.scala
. Umieść to w pliku:
import org.scalatest.{FlatSpec, Matchers}
class HelloWorldSpec extends FlatSpec with Matchers {
"Hello World" should "not be an empty String" in {
val helloWorld = "Hello World"
helloWorld should not be ("")
}
}
- W tym przykładzie wykorzystano
FlatSpec
iMatchers
, które są częścią biblioteki ScalaTest. -
FlatSpec
pozwala naFlatSpec
testów w stylu rozwojuFlatSpec
na zachowaniu (BDD) . W tym stylu używa się zdania, aby opisać oczekiwane zachowanie danej jednostki kodu. Test potwierdza, że kod przestrzega tego zachowania. Dodatkowe informacje można znaleźć w dokumentacji .
Arkusz Spec Test
Ustawiać
Poniższe testy wykorzystują te wartości w przykładach.
val helloWorld = "Hello World"
val helloWorldCount = 1
val helloWorldList = List("Hello World", "Bonjour Le Monde")
def sayHello = throw new IllegalStateException("Hello World Exception")
Sprawdź typ
Aby sprawdzić typ dla danego val
:
helloWorld shouldBe a [String]
Zauważ, że nawiasy tutaj służą do uzyskania typu String
.
Równa kontrola
Aby przetestować równość:
helloWorld shouldEqual "Hello World"
helloWorld should === ("Hello World")
helloWorldCount shouldEqual 1
helloWorldCount shouldBe 1
helloWorldList shouldEqual List("Hello World", "Bonjour Le Monde")
helloWorldList === List("Hello World", "Bonjour Le Monde")
Nie równa kontrola
Aby przetestować nierówność:
helloWorld should not equal "Hello"
helloWorld !== "Hello"
helloWorldCount should not be 5
helloWorldList should not equal List("Hello World")
helloWorldList !== List("Hello World")
helloWorldList should not be empty
Kontrola długości
Aby sprawdzić długość i / lub rozmiar:
helloWorld should have length 11
helloWorldList should have size 2
Sprawdź wyjątki
Aby zweryfikować typ i komunikat wyjątku:
val exception = the [java.lang.IllegalStateException] thrownBy {
sayHello
}
exception.getClass shouldEqual classOf[java.lang.IllegalStateException]
exception.getMessage should include ("Hello World")
Dołącz bibliotekę ScalaTest do SBT
Używając SBT do zarządzania zależnością biblioteki , dodaj to do build.sbt
:
libraryDependencies += "org.scalactic" %% "scalactic" % "3.0.0"
libraryDependencies += "org.scalatest" %% "scalatest" % "3.0.0" % "test"
Więcej informacji można znaleźć na stronie ScalaTest .
Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow