Undone tests fail silently when using the JUnit reporter
- Vorherrschende Sprache
- JavaScript
- Sterne
- 1.9k
- Forks
- 359
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
When running unit tests at the command line, using the default reporter, I get the following error in the console if there are undone tests:
_FAILURES: Undone tests (or their setups/teardowns):
details of my test here
To fix this, make sure all tests call test.done()_
However, when using the JUnit reporter, the failure is completely silent - no XML files are written. In our case, this means that our CI system (Jenkins) doesn't see the failures (or indeed any results) and hence marks the build as a success.
I would expect the results to still be written in this case, so that we can see which tests have passed and which have failed.
Note that the cause of undone tests isn't always due to the developer failing to call test.done() - in this specific case, the test.done() was in a callback within the unit test that ended up not getting called due to regression introduced in the production code being tested.
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Rechercherichtung
Beginne damit, nachzuverfolgen, wie der JUnit-Reporter mit nicht abgeschlossenen Tests umgeht, und vergleiche dies mit dem Fehlerpfad des Standard-Reporters. Reproduziere das Problem mit einem nicht abgeschlossenen Test und überprüfe anschließend, dass der Reporter XML schreibt, das die relevanten bestandenen und fehlgeschlagenen Ergebnisse enthält, anstatt stumm zu bleiben.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- javascript
- Bereich
- testing-qa
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 42/100