Overslaan naar hoofdinhoud

Testen met webforJ

Openen in ChatGPT

Testen in webforJ-apps combineert unit-, frontend- en end-to-endtests (E2E), die elk een eigen doel dienen om de app stabiel en betrouwbaar te houden.

Unittests​

Unittests zijn gericht op het afzonderlijk controleren van individuele componenten of backendlogica. Door standaard Java-testpraktijken te volgen, zoals het gebruik van JUnit, kunnen ontwikkelaars specifieke applogica valideren en controleren of elke ‘unit’ naar verwachting werkt.

Voor views en componenten maakt de TestBed browserloos testen mogelijk in gewone JUnit-tests, zonder browser of server. Een test voegt een view toe aan de pagina, voert er acties op uit zoals een gebruiker dat zou doen en controleert het resultaat vanuit Java.

Frontendtests​

Frontendtests omvatten de bronnen die een project zelf schrijft met de frontendbundler. De test-runner van Bun voert deze uit als onderdeel van dezelfde build als de Java-tests, zodat een TypeScript-component of een stukje clientlogica op dezelfde manier wordt gecontroleerd als de backend. Zie Frontendtests.

End-to-endtests (E2E)​

End-to-endtests valideren wat gebruikers ervaren in webforJ-apps, die dynamische webinterfaces met één pagina genereren. Deze tests simuleren gebruikersinteracties en controleren de functies van de volledige app.

Met tools zoals Selenium en Playwright kun je:

  • Browserinteracties automatiseren door klikken op knoppen en het verzenden van formulieren te simuleren.
  • Controleren of dynamische UI-componenten consistent worden weergegeven en interactief zijn.
  • Bevestigen dat het gedrag consistent blijft in verschillende browsers en op verschillende apparaten.

Teststrategieën combineren​

Door unit- en E2E-tests te combineren:

  1. Problemen isoleren: detecteer en verhelp bugs op componentniveau vroegtijdig met unittests.
  2. Betrouwbaarheid bevestigen: valideer volledige gebruikersroutes en systeemintegraties met E2E-tests.

Onderwerpen​

Blijf leren