Möchten Sie eine Funktion anfordern oder einen Fehler melden?
Funktion/Fehler
Wie ist das aktuelle Verhalten?
Wenn sich eine Bibliothek schlecht verhält und den Prozess nicht beenden lässt, bleibt der Prozess auf unbestimmte Zeit hängen, obwohl alle Tests bestanden werden. Es könnte argumentiert werden, dass diese Bibliotheken sich möglicherweise nicht einmal schlecht benehmen, da es einige triftige Gründe gibt, den Prozess nicht auf natürliche Weise enden zu lassen.
Wenn das aktuelle Verhalten ein Fehler ist, stellen Sie bitte die zu reproduzierenden Schritte und entweder eine repl.it-Demo über https://repl.it/languages/jest oder ein minimales Repository auf GitHub bereit, das wir yarn install
und yarn test
.
Was ist das erwartete Verhalten?
Jest beendet den Prozess, wenn alle Tests abgeschlossen sind und Jest nichts mehr testen kann.
Bitte geben Sie Ihre genaue Jest-Konfiguration an und erwähnen Sie Ihre Jest-, Node-, Garn-/npm-Version und Ihr Betriebssystem.
Ich denke nicht, dass es relevant ist, aber hier:
Dafür ist --forceExit
da, aber es ist eine Notluke. Wenn Jest nicht beendet wird, bedeutet dies, dass Sie nach Ihren Tests nicht richtig aufräumen (verwenden Sie afterAll
).
Die Antwort hat das Problem nicht gelöst...
@cpojer - könnten Sie etwas Licht ins Dunkel bringen, warum dies als Notausstieg und nicht als Standardverhalten angesehen wird?
Meine Erwartung wäre, dass das Aufrufen von Jest ausschließlich dem Zweck dient, Tests auszuführen. Wenn alle Testblöcke auf die eine oder andere Weise aufgelöst wurden und jeder after*
-Block verarbeitet wurde, was ist der Grund für die Annahme, dass Prozesse, die Jest überleben, weiter ausgeführt werden sollten?
IMO sollten diese standardmäßig getötet werden. Wir haben nach* für ordentliches Aufräumen/Herunterfahren, wenn nötig, aber ich würde wetten, dass ein harter Ausgang die meiste Zeit keine Probleme bereiten würde.
Hilfreichster Kommentar
Die Antwort hat das Problem nicht gelöst...