org.scalatest: Globale Konfiguration (wie vorAllSuites?)

9

Ich habe eine Scala-Anwendung mit einigen Tests mit org.scalatest. Diese Tests benötigen ein globales Setup (und Teardown), um die Testdatenbank zu verwalten.

Bitte sagen Sie mir nicht, dass meine Tests nicht auf die Datenbank treffen sollten und ich sollte es mit dem Java-DAO-Stub-WTF-Overkill-Way ™ machen: -).

Ich führe die Tests mit SBT durch, was eine Möglichkeit bietet, Code vor und nach dem Test auszuführen:

%Vor%

Leider kann ich dort nicht auf die fraglichen Klassen zugreifen. Es überrascht nicht, dass das Importieren in build.sbt auch nicht funktioniert.

Irgendwelche Ideen?

    
Martin Vielsmaier 13.12.2011, 09:27
quelle

1 Antwort

4

Sie können die BeforeAndAfterAll oder BeforeAndAfter Merkmale, abhängig von Ihren Bedürfnissen.

BeforeAndAfterAll:

  

Eigenschaft, die in Suites gemischt werden kann, die zuvor aufgerufene Methoden benötigen   und nach dem Ausführen der Suite. Diese Eigenschaft ermöglicht die Ausführung von Code   vor und / oder nach all den Tests und verschachtelten Suiten einer Suite sind   run.

In diesem Fall würden Sie also eine MasterSuite definieren, die alle anderen Suites / Tests enthält, die dieses Merkmal erweitern.

BeforeAndAfter:

  

Eigenschaft, die in Suites gemischt werden kann, die Code benötigen, der vor und ausgeführt wurde   nach dem Ausführen jedes Tests. Dieses Merkmal erleichtert eine Art des Testens in   Welche veränderbaren Fixture-Objekte in Instanzvariablen gehalten werden, wird ersetzt   oder vor jedem Test oder jeder Suite neu initialisiert.

    
Matthew Farwell 14.12.2011 10:59
quelle

Tags und Links