Zoeken…


Hallo Wereld Spec-test

Maak een testklasse in de map src/test/scala , in een bestand met de naam HelloWorldSpec.scala . Plaats dit in het bestand:

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 ("")
  }
}

Spec Cheatsheet

Opstelling

De onderstaande tests gebruiken deze waarden voor de voorbeelden.

val helloWorld = "Hello World"
val helloWorldCount = 1
val helloWorldList = List("Hello World", "Bonjour Le Monde")
def sayHello = throw new IllegalStateException("Hello World Exception")

Typ vinkje

Om het type voor een gegeven val te verifiëren:

helloWorld shouldBe a [String]

Merk op dat de haakjes hier worden gebruikt om het type String te krijgen.

Gelijke controle

Om gelijkheid te testen:

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")

Niet gelijk check

Ongelijkheid testen:

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

Lengte controleren

Om lengte en / of maat te verifiëren:

helloWorld should have length 11
helloWorldList should have size 2

Uitzonderingen controleren

Om het type en bericht van een uitzondering te verifiëren:

val exception = the [java.lang.IllegalStateException] thrownBy {
  sayHello
}
exception.getClass shouldEqual classOf[java.lang.IllegalStateException]
exception.getMessage should include ("Hello World")

Voeg de ScalaTest-bibliotheek toe aan SBT

Gebruik SBT om de bibliotheekafhankelijkheid te beheren , voeg dit toe aan build.sbt :

libraryDependencies += "org.scalactic" %% "scalactic" % "3.0.0"
libraryDependencies += "org.scalatest" %% "scalatest" % "3.0.0" % "test"

Meer details zijn te vinden op de ScalaTest-site .



Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow