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?
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.
Tags und Links installation sbt scalatest