So kompilieren Sie Tests mit SBT, ohne sie auszuführen


97

Gibt es eine Möglichkeit, Tests mit SBT zu erstellen, ohne sie auszuführen?

Mein eigener Anwendungsfall besteht darin, eine statische Analyse des Testcodes mithilfe eines Scalac-Plugins durchzuführen. Ein weiterer möglicher Anwendungsfall besteht darin, einen Teil oder den gesamten Testcode mit einem anderen als dem in SBT integrierten Runner auszuführen.

Idealerweise gibt es eine Lösung für dieses Problem, die für jedes SBT-Projekt gilt. Beispielsweise verfügt Maven über einen Testkompilierungsbefehl, mit dem die Tests nur kompiliert werden können, ohne sie auszuführen. Es wäre großartig, wenn SBT das Gleiche hätte.

Weniger ideal, aber dennoch sehr hilfreich wären Lösungen, bei denen die Build-Dateien des Projekts geändert werden.

Antworten:



21

test:compile funktioniert zum Kompilieren Ihrer Unit-Tests.

Zum Kompilieren von Integrationstests können Sie verwenden it:compile.

Ein weiterer Hinweis zum kontinuierlichen Kompilieren bei jeder Dateiänderung: ~test:compile


6

Wir haben eine build.sbtDatei, die für mehrere Projekte verwendet wird. Doing sbt test:compiledie Tests für jedes einzelne Projekt zusammengestellt und übernahm 30 Minuten.

Ich habe herausgefunden, dass ich nur die Tests für ein bestimmtes Projekt mit folgenden Namen kompilieren kann xyz:

sbt xyz/test:compile
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.