Een zachte controle heeft nog steeds een harde stop nodig.
Verzamel onafhankelijke fouten zonder een mislukte voorwaarde de volgende actie te laten toestaan.

Vertaalde editie. Technische identificatiegegevens blijven in hun oorspronkelijke vorm.

Een reviewpagina heeft een verkeerde titel en conceptstatus. Een gewone assertie stopt bij de eerste afwijking; een zachte kan beide verzamelen. Dat helpt de diagnose, maar de test blijft mislukt. Verder uitvoeren geeft geen toestemming om de productworkflow voort te zetten.
Deze gids gebruikt Playwrights assertiedocumentatie met een verzonnen lokale pagina. Geen echte goedkeuring, inzending of account. Onafhankelijke observaties gaan vooraf aan een grens vóór de knop voor de volgende stap.
Verzamel observaties die betekenis houden
Mislukte zachte asserties stoppen de uitvoering niet, maar markeren de test als mislukt. Ze werken met de Playwright-testrunner, niet automatisch met een andere bibliotheek.
De volgende observatie moet zinvol blijven na een afwijking. Een verkeerde titel verhindert geen onafhankelijke statuscontrole. Een ontbrekend basisrecord is anders: zijn velden lezen levert wellicht alleen verwarrende vervolgerrors op.
await expect.soft(page.getByRole('heading')).toHaveText('Review demo draft');
await expect.soft(page.getByRole('status')).toHaveText('Ready for review');
expect(test.info().errors).toHaveLength(0);
await page.getByRole('button', { name: 'Continue demo' }).click();De gecontroleerde pagina en geïmporteerde test en expect zijn vereist. De harde foutcontrole is bewust. Bij een zachte fout wordt Continue niet aangeklikt. De lokale knop is geen regel voor echte goedkeuring.
Zet de grens vóór afhankelijke acties
Stop vóór een actie waarvan de betekenis afhangt van de gecontroleerde toestand. Aan het einde is het te laat: misschien is het verkeerde record al gewijzigd. Kies op basis van afhankelijkheden, niet voor de langste foutenlijst.
Fouten staan in test.info().errors. Wis die array niet en verander de status niet om succes te veinzen. Een latere schermafbeelding wist fouten niet uit.
Verdere leesobservaties moeten zinvol en toegestaan blijven. Ook lezen kan privégegevens in traces tonen. Gebruik toegestane testrecords en bekijk bestanden vóór delen.
Controleer ook het negatieve geval
De lokale opstelling bevat twee afwijkingen. De runner bewaart beide, daarna stopt de harde grens. Een nacontrole bevestigt dat de knop nooit van toestand veranderde. Deze bedoelde mislukking blijft een mislukking, geen productiepass.
Een andere case met correcte gegevens passeert de grens en verandert een lokale marker. Dat bewijst controlestroom, geen serverbescherming of universele eigenschap van gegenereerde tests.
Voor een veiligheidsvoorwaarde kan een gewone harde assertie eenvoudiger zijn. Zachtheid is een diagnosehulpmiddel, geen plicht om alle fouten uit te stellen. Gebruik beide passend.
Laat een beoordelingsregel achter
Noteer onafhankelijke checks, afhankelijke actie en stopplaats. Zo zie je een traject dat fouten verzamelt maar toch verder handelt.
AnyTest beschrijft verkenning en end-to-endtests voor menselijke beoordeling. Vraag of de test zijn fout bewaart en afhankelijke acties afschermt. Geen specifieke AnyTest-implementatie wordt geclaimd. Meer diagnose mag de grens niet verzwakken.
Veelgestelde vragen
Blijft een test groen na een zachte fout?
Nee. De uitvoering gaat verder, maar de test wordt als mislukt gemarkeerd.
Waar hoort de harde grens?
Vóór de afhankelijke actie, niet alleen aan het einde.