Wie man nur fehlgeschlagene Nunit-Tests in Teamcity Build ausführt

9

Ich habe viele Tests in Selen, die fast 6 Stunden in Anspruch nahmen. Nach der Ausführung scheiterten einige von ihnen aufgrund eines Zeitüberschreitungsfehlers oder unvermeidbarer Fehler. Ich möchte in diesem Fall nur fehlgeschlagene Tests ausführen. Ich verwende teamcity, um die Nunit-Tests auszuführen. Irgendeine Idee, wie ich nur fehlgeschlagene Tests wiederholen kann.

    
sam 09.09.2014, 09:38
quelle

2 Antworten

1

Es gibt eine Option, fehlgeschlagene Tests zuerst als Teil der nUnit-Integration von TeamCity auszuführen - aber Sie können nicht nur auf fehlgeschlagene Tests beschränken, nichts ist so eingebaut.

Sie haben hier meiner Meinung nach ein paar Optionen:

  • Verwenden Sie eine Selenium-Grid / andere Infrastruktur, um Ihre Selenium-Tests parallel auszuführen, um Ihren Testlauf zu reduzieren Zeit. Dies scheint die Wurzel Ihres Problems zu sein: Derzeit ist die Zeit für einen vollständigen Testlauf unerschwinglich. Wenn Sie Ihre Selenium-Tests schnell ausführen können, müssen Sie sie nicht selektiv ausführen. Im Allgemeinen ist die Verwendung des eingebauten nUnit-Laufers langfristig eine schlechte Wahl, da keine Parallelität möglich ist.
  • Basierend auf den Fehlern, die Sie sehen, bestimmen Sie die nUnit-Test-Fixtures und führen einen benutzerdefinierten nUnit-Lauf aus, in dem Sie diese Test-Fixtures erneut ausführen - auch hier gibt es keine Integration und Sie müssten die Befehlszeile nUnit runner verwenden .
BrokenGlass 11.09.2014 14:11
quelle
0

Abhängig vom verwendeten Testframework gibt es einige Optionen, mit denen Sie Teamcity starten können, indem Sie mithilfe von Befehlszeilenoptionen flexiblere Kriterien testen. Wir haben diese Problemumgehung in unserer instabilen Testumgebung verwendet.

Mit NUnit kann die gefilterte Ausgabedatei (nach fehlgeschlagenem Test) als gegebene Testliste für den nächsten Lauf verwendet werden. Es gibt verschiedene Möglichkeiten, die Liste abzurufen und festzulegen. Details finden Sie hier: Ссылка

Es gibt zwei schnelle Optionen:

  • Sie speichern / fügen die Liste mit fehlgeschlagenen Tests in einer Datei (unter Verwendung von Powershell-Skript)
  • hinzu
  • lese die letzte Testergebnisdatei und verwende die Klausel wo , um die fehlgeschlagenen Tests zu erhalten

Bei jedem Lauf sollte die Liste mit Tests verkleinert werden.

Seien Sie sich bewusst:

  • Builds sind nicht einfach vergleichbar (teamcity schätzt die Ausführungszeit oder wenn Sie Fehlerbedingungen aufgrund von Metrikänderungen haben)
  • (neue) Fehler in anderen Tests bleiben unentdeckt, bis Sie alle Tests erneut starten
Marc Sputnik 23.06.2017 14:03
quelle

Tags und Links