2016-04-25 11 views
0

unten ist mein Problem. Ich habe RunTest(main class), die Testgxml-Datei dynamisch erzeugt, d. H. Virtuell testng.xml.Gradle Test läuft die Hauptklasse

In meiner gradle.build Datei folgende Test habe ich, die die statische testng.xml-Datei verwendet, nicht die virtuelle ein:

test { 
    useTestNG() { 
     // runlist to executed. path is relative to current folder 
     suites 'testng.xml' 
    } 
} 

meines Wissens, wenn der Befehl ausgeführt wird gradle test es für testng.xml Datei sucht und führt die Testklassen definiert in der Datei testng.xml.

Aber ich möchte die Hauptklasse i ausführen. e. RunTest Wenn ich Befehl gradle test feuern, so dass meine Hauptmethode dynamisch (virtuelle) generiert testng.xml und führt Tests anstelle von statischen testng.xml Datei.

kann mir bitte jemand helfen, rufen Sie und führen Sie die Hauptklasse von build.gradle.

Antwort

0

Wenn Sie Hauptmethode tatsächlich die Tests ausgeführt wird, definieren nur eine Aufgabe test vom Typ JavaExec mit override Satz wahr genannt und es wird die bereits bestehende test Aufgabe ersetzen. Wenn Ihre Hauptklasse nur die dynamische Datei testng.xml generiert, definieren Sie einfach eine Aufgabe generateTestNgXML vom Typ JavaExec, die Ihre testng.xml Datei generiert und die Testaufgabe von Ihrer Aufgabe abhängig macht. Konfigurieren Sie dann die Testaufgabe, um Ihre generierte Konfigurationsdatei zu verwenden.

+0

Danke Bjom .. ich werde das versuchen und updaten .. –