Ich arbeite mit viel Legacy-Code. Zu Beginn gab es eine JUnit-TestSuite. Wenn alle Tests mit Gradle ausgeführt wurden, sind sie fehlgeschlagen. Als sie den Test in IntelliJ durchführten, arbeiteten sie. Wir haben Gradle konfiguriert, um die Testsuite zu verwenden.JUnit Tests beeinflussen sich gegenseitig
Jetzt berichtete jemand über Tests, die lokal ohne Gradle funktionieren, aber nicht mit Gradle. Es ist Zeit, dass wir dieses Durcheinander beheben.
Gibt es eine intelligente Methode, um herauszufinden, welcher Test eine Konfiguration zurücklässt oder welche Tests sich auf die anderen Tests stützen?
Wahrscheinlich ist es die Reihenfolge der Ausführung, denke ich, IDEs und JUnit im Allgemeinen nicht eine Bestellung oder Ausführung. Auch wenn es statische Variablen gibt, die nicht unveränderbar sind, können einige Probleme auftreten. - Entschuldigung für den mit Gründen versehenen Kommentar. – cesaregb
Mir ist kein einfacher Weg bekannt ... Ich würde nach Tests mit '@ BeforeClass' suchen. Testfehler werden Sie natürlich auch auf die problematische Klasse hinweisen. Ich würde das Bugfixing nennen, und wenn es einen automatisierten Weg gäbe, Bugs zu beheben, wären wir alle arbeitslos. Wenn Sie einen Code-Coverage-Bericht erhalten können, wird möglicherweise genau angegeben, wo der Fehler auftritt. –
Danke, @cesaregb, ich werde nach statischen Variablen suchen! –