Vorteile von Maven failsafe plugin
Frage
ich lese Maven failsafe plugin ist speziell für die Ausführung von Integrationstests entwickelt. Derzeit arbeite ich an einem Multi-Modul-Projekt, und Integrationstests sind in einem eigenen Modul, das in TestNG geschrieben und ausgeführt wird Todesfire Plugin. Wir haben keine Konflikte mit Unit -Tests, da in der Testphase in diesem Modul nur Integrationstests durchgeführt werden. Und um die Umgebung vor den Tests einzurichten und sie nach den Tests zu reinigen, @BeforeSuite @AfterSuite
Testng -Anmerkungen werden verwendet. Es ist also nicht erforderlich, von zu benutzen pre-integration-test
Phase, integration-test
Phase, post-integration-test
Phase verwendet durch failsafe plugin.
- Gibt es weitere Vorteile, die ich verpasst habe, indem ich das Failsafe -Plugin nicht benutze?
- Gibt es bessere Möglichkeiten, meine aktuelle Anforderung mit dem Failsafe -Plugin zu erledigen?
- Kann ich mein Server -Start durchführen, herunterfahren, Dateien entpacken usw. in der
pre-integration-test
,post-integration-test
Phasen ohne ein Maven -Plugin zu schreiben?
Lösung
Wenn Sie bereits Ihren eigenen Test -Setup/-Antraindown in Ihren Suiten haben, was Sie aus dem Aussehen von ihm tun, können Sie nicht viel vom failsafe -Plugin gewinnen.
Das failsafe -Plugin ist in Situationen nützlich, in denen die Einrichtung Ihres zu testenden Systems kostspielig ist oder lange dauert, z. B. ein Servlet oder ein verteiltes System. Die Art und Weise, wie das failsafe -Plugin in diesen Situationen nützlich ist, ist, dass Sie diese Umgebung in der pre-integration-test
Phase. Dieses Plugin stoppt auch nicht die Ausführung des Maven -Builds, wenn ein Test fehlschlägt, sodass Sie alle Ihre Artefakte während des post-integration-test
Phase, nach der es den Status Ihrer Tests überprüft und besteht verify
Phase.
Andere Tipps
Failsafe hat ein großes Feature im Vergleich zu SureFire: Wenn ein Test fehlschlägt, wird er nicht sofort abgebrochen. Stattdessen kann der Reinigungscode ausgeführt werden (der normalerweise den Stegserver abnimmt).
Wenn Sie Ihre dritte Frage beantworten, da sie nicht wirklich beantwortet wird, IMHO.
Kann ich mein Server-Start, herunterfahren, die Datei entpackt usw. in den Phasen vor der Integrationstest, nach der Integrationstest, ohne ein Maven-Plugin zu schreiben?
Genommen von Diese Antwort zu "Maven failsafe Plugin: So verwenden Sie die Phasen vor und nach der Integrationstests"
Es läuft auf: pre-integration-test
und post-integration-test
Tun Sie nichts pro Standard. Sie können ein Plugin für Ihre Aufgabe an diese Phasen binden. Das Finden eines bestimmten Plugins hängt davon ab, was Sie tun möchten.
Eine weitere wichtige Sache, die darauf hinweist maven-failsafe-plugin
: Es wird Testklassen mit Namen ausgeführt, die mit dem Start oder der Beendigung mit dem Beginn oder enden IT
(als Integrationstestklasse)