2010-10-22 12 views

Antwort

3

Es gibt keine Möglichkeit (wie in 4.8) Kategorien über die Befehlszeile anzugeben.

1

Ich kann zwei Ansätze vorschlagen: 1. Erstellen Ant-Datei mit Junit Ziel und rufen Sie dann dieses Ziel aus Empfehlungszeile. 2. Implementieren Sie Testsuite-Klasse, in einigen Klassen mit main() -Methode. So können Sie es ausführen.

5

Mit java Lauf JUnitCore Klasse (siehe auch here).

Kategorien sollen mit Testsuiten mit @RunWith(Categories.class) , @IncludeCategory und @ExcludeCategory verwendet werden. Mir ist keine dynamische Möglichkeit bekannt, Kategorien zum Ausführen von Tests zu verwenden, aber ich würde gerne wissen, dass es solche gibt. Sie können vordefinierte Testsuiten für bestimmte Kategorien verwenden, um sie auszuführen.

+0

Es ist möglich, einen benutzerdefinierten Test-Runner zu erstellen, der Tests basierend auf Kategorien dynamisch auswählt. – topchef

+0

Hier ist eine Möglichkeit, alle Tests in einer Suite/Kategorie einfach auszuführen (ohne die Tests explizit aufzuführen): http://stackoverflow.com/questions/2176570/how-to-run-all-tests-belonging-to-a- bestimmte-Kategorie-in-Junit-4/2176791 # 2176791 (lassen Sie mich wissen, wenn dies nicht, was Sie meinten.) – Jonik

+0

Ja, ich bin mir dessen bewusst (http://stackoverflow.com/questions/3324623/how-can -i-run-all-junit-tests-in-einem-paket-netbeans/3332970 # 3332970). Ich denke, was Autor bedeutet, ist Tests auf der Grundlage der Kategorie als Parameter zu laufen. – topchef

0

In 4.10, wir tun dies:

mvn verify -p(your profiles) -Dit.test=(SuiteClass) 

wo SuiteClass ist eine leere Klasse (keine Methoden oder Felder), die mit @RunWith(Categories.class) und @Suite.SuiteClasses({FooIT.class, BarIT.class, ...}) kommentiert wird. FooIT und BarIT sind die Integrationstests.

Verwandte Themen