Wie kann ich eine Testsuite mithilfe von Gradle über die Befehlszeile ausführen?

9

Ich versuche, Gradle zu verwenden, um Tests mit dem folgenden Befehl auszuführen, aber es funktioniert nicht

%Vor%

meine Testsuite sieht wie folgt aus

%Vor%

Das Ausführen des folgenden Befehls funktioniert, aber erschwerend genug, führt es jeden Test zweimal aus. einmal selbst und dann wieder unter der Testsuite in demselben Namespace

%Vor%

Ich könnte die Testsuite einfach fallen lassen und es auf diese Weise tun, aber ich möchte besser verstehen, was hier vor sich geht und warum ich nicht sagen kann, dass es die Testsuite direkt ausführen soll.

    
tam 11.06.2015, 19:32
quelle

1 Antwort

3

Das Folgende funktioniert für mich lokal.

%Vor%

Dies verwendet einen anderen Ansatz (Testeinschluss) als den fortgeschritteneren Filteransatz von --test .

Wie im oben genannten Beispiel dokumentiert, wird im obigen Beispiel ein Dateieinschlussmuster der Form **/MySuite*.class erstellt, während --test versucht, Tests aus dem gescannten Testsatz auszuwählen. Ich vermute, es gibt einige unvorhergesehene Interaktionen zwischen der generischen Testfilterung, die in Gradle implementiert wurde, und den spezifischen Fällen rund um den Runner der JUnit Suite.

Nachdem dies gesagt wurde, warnen sogar die Gradle-Dokumente davor, dass der obige Ansatz ersetzt wird, und in Wirklichkeit würde ich wahrscheinlich @ Opals Kommentar wiederholen und eine explizite Aufgabe definieren, um Suites für eine bestimmte Testphase auszuführen. Zum Beispiel kann der folgende Lauf mit gradle clean testSuite eine Integrationssuite ausführen.

%Vor%

Referenzen:

lemoncurd 03.11.2015, 22:21
quelle

Tags und Links