Levenscyclus van softwaretests (STLC): 6 fasen, in- en uitgangscriteria, voorbeeld

  1. Home
  2. Blog
  3. Software testen

Softwaretesten

Levenscyclus van softwaretests (STLC): 6 fasen, in- en uitstapcriteria, voorbeeld

Testen is meer dan het uitvoeren van testgevallen aan het einde van een project. Leer de zes STLC-fasen, wat elke fase nodig heeft en produceert, hoe ze van toepassing zijn op een echte functie en hoe Agile-teams ze aanpassen.

9 min leestijd
Levenscyclus van softwaretests (STLC): zes fasen, in- en uitstapcriteria en een voorbeeld

Belangrijkste punten

  • De levenscyclus van softwaretests is de reeks activiteiten die worden gebruikt voor het plannen, ontwerpen, uitvoeren en afsluiten van tests.
  • Het gemeenschappelijke model kent zes fasen, van de analyse van de vereisten tot de afsluiting van de test.
  • Ingangs- en uitgangscriteria bepalen wanneer een fase kan beginnen en wanneer deze klaar is.
  • Agile teams behouden dezelfde activiteiten, maar herhalen deze elke sprint in kleine lusjes.

Wanneer een bug in productie komt, is de oorzaak vaak niet dat iemand vergeten is een test uit te voeren. Het is dat een vereiste nooit in twijfel werd getrokken, dat de testgegevens verkeerd waren of dat niemand het eens was over wat ‘gedaan’ betekende. De levenscyclus voor het testen van software pakt deze problemen aan door het testen een duidelijke structuur te geven, vanaf de eerste vereiste tot aan het eindrapport.

Deze gids legt elke fase uit en volgt vervolgens één illustratief kenmerk door ze allemaal: een inlogpagina die een account vergrendelt na vijf mislukte pogingen. Bronnen zijn het niet helemaal eens over het aantal fasen. Je ziet modellen met zeven of acht, maar meestal verdelen ze hetzelfde werk anders. Wij gebruiken de algemeen onderwezen zesfasenversie.

Wat is de STLC?

De STLC is een gedefinieerde reeks testactiviteiten die worden uitgevoerd om te bevestigen dat software aan de vereisten voldoet. Elke fase heeft een doel, input en output, zodat het testen gepland en traceerbaar is in plaats van aan het eind te improviseren.

De voordelen zijn praktisch. Testers worden er vroeg bij betrokken, wanneer defecten goedkoper te repareren zijn. Inspanning gaat naar de hoogste risico’s. En als een manager vraagt: “Zijn we klaar om vrij te geven?”, Kan het team antwoorden met bewijsmateriaal.

De zes STLC-fasen in één oogopslag

Fase Hoofddoel Sleuteluitvoer
1. Behoefteanalyse Begrijp wat u moet testen Vragen, toetsbare vereisten, RTM
2. Testplanning Bepaal hoe u gaat testen Testplan, schattingen
3. Ontwikkeling van testcases Ontwerp de tests Testcases, scripts, testgegevens
4. Omgevingsinstellingen Bereid voor waar u wilt testen Klaar omgeving, rooktestresultaat
5. Testuitvoering Voer tests uit en registreer defecten Resultaten, bugrapporten
6. Testafsluiting Evalueer en leer Afsluitingsrapport, geleerde lessen

Toegangscriteria zijn de voorwaarden waaraan moet worden voldaan voordat een fase begint. Uitgangscriteria zijn de voorwaarden waaraan moet worden voldaan voordat deze eindigt. Ze weerhouden een team ervan om bijvoorbeeld tests uit te voeren op een kapotte build en daarmee een dag te verspillen.

Fase 1: Behoefteanalyse

Testers bestuderen de eisen om erachter te komen wat er getest kan worden en wat onduidelijk is. Dit is vaak de goedkoopste plek om een ​​bug te voorkomen, omdat een vraag veel minder kost dan een productiefix.

  • Invoer: Er zijn vereiste documenten of gebruikersverhalen beschikbaar.
  • Activiteiten: functionele en niet-functionele behoeften identificeren, vragen stellen, risico’s inschatten en beslissen wat geautomatiseerd kan worden.
  • Afsluiten: open vragen worden beantwoord en de traceerbaarheidsmatrix (RTM) van eisen wordt gestart.
  • Deliverables: een lijst met testbare vereisten en de RTM.

Inlogvoorbeeld. Het verhaal zegt: “Vergrendel het account na vijf mislukte pogingen”. Een goede tester vraagt: vijf in welke periode? Hoe wordt het ontgrendeld? Wordt bij een succesvolle aanmelding de telling gereset? Welke melding wordt getoond? Elk antwoord wordt iets toetsbaars.

Fase 2: Testplanning

Het team bepaalt de omvang, aanpak, mensen, middelen, planning en risico’s. Meestal is de testleider eigenaar van deze fase.

  • Entry: analyseerde de vereisten en een eerste risicobeoordeling.
  • Activiteiten: bepaal de reikwijdte, schat de inspanning, selecteer tools, wijs rollen toe en stel exitcriteria in voor latere fasen.
  • Afsluiten: het testplan wordt beoordeeld en goedgekeurd.
  • Deliverables: het testplan en de inspanningsschattingen.

Inlogvoorbeeld. In het bereik: uitsluitingsregels, reset- en foutmeldingen op internet en mobiel. Buiten bereik: eenmalige aanmelding, afgehandeld door een ander team. Het grootste risico is het buitensluiten van echte gebruikers, dus dat krijgt de meeste aandacht. Als je niet zeker weet hoe een plan verschilt van een strategie, lees dan Testplan versus teststrategie.

Fase 3: Ontwikkeling van testcases

Hier schrijven testers de gedetailleerde testcases, automatiseringsscripts en testgegevens.

  • Toegang: een goedgekeurd testplan en stabiele eisen.
  • Activiteiten: testcases schrijven en beoordelen, gegevens voorbereiden, geautomatiseerde controles scripten en de RTM bijwerken.
  • Afsluiten: testcases en gegevens zijn beoordeeld en klaar.
  • Deliverables: testcases, scripts en testgegevens.
Identiteitskaart Scenario Verwacht resultaat
TC-01 4 mislukte pogingen, daarna het juiste wachtwoord Het inloggen is gelukt en de telling wordt opnieuw ingesteld
TC-02 5 mislukte pogingen Account wordt vergrendeld en er verschijnt een duidelijk bericht
TC-03 Correct wachtwoord op een vergrendeld account Inloggen wordt nog steeds geweigerd
TC-04 Mislukte pogingen in twee browsers tegelijk De telling wordt gedeeld en blijft accuraat
TC-05 Ontgrendel met de resetlink Inloggen werkt en de telling is gewist

Merk op dat TC-01 en TC-02 beide kanten van de limiet testen, wat rechtstreeks voortkomt uit grenswaardeanalyse. Voor meer informatie over hoe je deze goed schrijft, zie hoe je testcases schrijft.

Fase 4: Inrichting van de testomgeving

Tests moeten ergens realistisch kunnen worden uitgevoerd: de juiste servers, gegevens, accounts, browsers en netwerktoegang. Deze fase loopt vaak parallel met fase 3 en kan worden afgehandeld door ontwikkelaars of een DevOps-team.

  • Invoer: een testplan, een architectuuroverzicht en omgevingseisen.
  • Activiteiten: hardware of containers instellen, gegevens laden, toegang configureren en de build installeren.
  • Afsluiten: de omgeving is gereed en een rooktest is geslaagd.
  • Deliverables: een werkomgeving en een rooktestresultaat.

Inlogvoorbeeld. Staging krijgt testaccounts in bekende statussen, samen met een verkorte vergrendelingstimer, zodat testers niet hoeven te wachten. Een snelle rooktest bevestigt dat de login überhaupt wordt geladen voordat de volledige run begint. Containers helpen omgevingen consistent te houden, zoals u kunt zien in onze Docker Compose-tutorial.

Fase 5: Testuitvoering

Testers voeren de geplande tests uit, vergelijken werkelijke en verwachte resultaten en rapporteren defecten. Vaste bugs worden opnieuw getest en gerelateerde gebieden ondergaan regressietests.

  • Entry: testcases zijn klaar, de omgeving werkt en er is een build opgeleverd.
  • Activiteiten: voer tests uit, registreer resultaten, registreer defecten, test oplossingen opnieuw en update de RTM.
  • Afsluiten: geplande tests worden uitgevoerd en defecten worden verholpen of formeel geaccepteerd.
  • Deliverables: testresultaten en defectrapporten.

Inlogvoorbeeld. TC-04 mislukt: met twee browsers staat de teller slechts op vier. De tester registreert de bug met duidelijke stappen en bewijsmateriaal, zoals beschreven in hoe u een bugrapport schrijft. Zodra het probleem is verholpen, wordt TC-04 opnieuw uitgevoerd en doorlopen de bijbehorende inlogcontroles de regressiechecklist.

Tip: Maak exitcriteria meetbaar en spreek deze vooraf af. “Alle kritische tests slagen en er zijn geen bugs met een hoge ernst open” is moeilijk te beargumenteren. ‘Testen ziet er goed uit’ is geen criterium.

Fase 6: Testafsluiting

Deze fase wordt vaak overgeslagen, wat jammer is, want het is de manier waarop een team verbetert. Het team evalueert de cyclus, archiveert zijn werk en legt vast wat het heeft geleerd.

  • Invoer: de uitvoering is voltooid en de defectstatus is bekend.
  • Activiteiten: controleer de exitcriteria, analyseer defecttrends, archiveer testmiddelen en houd een retrospectief.
  • Afsluiten: het afsluitingsrapport is afgetekend.
  • Deliverables: het afsluitingsrapport en de geleerde lessen.

Inlogvoorbeeld. Uit het rapport blijkt dat alle vijf de gevallen na één oplossing zijn afgehandeld. De les is dat gelijktijdigheid pas laat werd getest, dus toekomstige functies met tellers krijgen dat scenario toegevoegd tijdens het ontwerp.

STLC versus SDLC

De SDLC, of levenscyclus van softwareontwikkeling, omvat het bouwen van het hele product. De STLC is het onderdeel gericht op testen en loopt ernaast.

Aspect SDLC STLC
Focus Software bouwen en leveren Valideren van de software
Onder leiding van Het hele productteam Voornamelijk QA- en testingenieurs
Fasen Eisen, ontwerpen, bouwen, testen, implementeren, onderhouden De zes fasen hierboven
Uitvoer Een werkend product Een bewijs van de kwaliteit ervan

Vereistenanalyse in de SDLC voedt de vereistenanalyse in de STLC, en ontwikkeling levert builds op voor de testuitvoering. Het testen hoeft niet te wachten tot het coderen is afgelopen. Vroeg beginnen is wat mensen bedoelen met ‘naar links verschuiven’.

STLC in Agile en DevOps

De fasen kunnen klinken als een lang eenrichtingsproces, maar dat hoeft niet zo te zijn. In Agile krimpen en herhalen dezelfde activiteiten binnen elke sprint, vaak in uren in plaats van weken:

  • Behoefteanalyse gebeurt bij het verfijnen van de achterstand, door middel van vragen over het gebruikersverhaal.
  • Planning gebeurt tijdens de sprintplanning, met lichte aantekeningen in plaats van lange documenten.
  • Testontwerp gebeurt naast het coderen, vaak als acceptatiecriteria en geautomatiseerde tests.
  • Het instellen van de omgeving wordt geautomatiseerd via containers en infrastructuur als code.
  • Uitvoering wordt continu uitgevoerd in een CI/CD-pijplijn.
  • Afsluiting wordt onderdeel van de sprintrecensie en retrospective.

Bewaar wat nuttig is en pas het papierwerk aan het risico aan. Voor een klein intern instrument is wellicht een korte checklist nodig, terwijl voor een banksysteem om regelgevingsredenen wellicht formele goedkeuringen nodig zijn.

Veel voorkomende fouten

  • Testers te laat binnenbrengen. Bugs die in de vereisten worden aangetroffen, zijn veel goedkoper dan bugs die na de release worden gevonden.
  • Vage exitcriteria. Zonder deze criteria bepalen deadlines voor jou de beslissing.
  • Testen in een slechte omgeving. Fouten veroorzaakt door slechte gegevens of configuratie verspillen tijd en ondermijnen het vertrouwen.
  • Afsluiting overslaan. Het team herhaalt dezelfde fouten in de volgende cyclus.
  • Het te strikt volgen. De STLC is een leidraad. Zware documenten betekenen niet automatisch een betere kwaliteit.

Tot slot

De levenscyclus van het testen van software is simpelweg een gedisciplineerd antwoord op zes vragen: wat testen we, hoe, met welke cases, waar, wat is er gebeurd en wat hebben we geleerd? Kijk naar uw volgende functie en kijk welke van deze vragen uw team gewoonlijk overslaat. Als u dat ene gat oplost, krijgt u waarschijnlijk de grootste winst.

Veelgestelde vragen

Wat zijn de 6 fasen van de STLC?

Dit zijn behoefteanalyse, testplanning, ontwikkeling van testcases, inrichting van de testomgeving, testuitvoering en testafsluiting. Sommige modellen splitsen deze in meer stappen.

Wat is het verschil tussen STLC en SDLC?

De SDLC omvat de bouw van het hele product, van vereisten tot onderhoud. De STLC omvat alleen testactiviteiten en loopt naast de ontwikkeling.

Wat zijn in- en uitstapcriteria?

Toelatingscriteria zijn voorwaarden die nodig zijn voordat een fase kan starten, zoals een stabiele bouw. Exitcriteria zijn voorwaarden die nodig zijn om het te voltooien, zoals het slagen voor alle kritische tests.

Wat is een RTM bij testen?

Een traceerbaarheidsmatrix voor vereisten brengt elke vereiste in kaart met zijn testgevallen. Het laat zien of aan elke vereiste wordt voldaan en helpt u de impact van wijzigingen in te schatten.

Wordt de STLC gebruikt in Agile?

Ja. Agile teams voeren dezelfde activiteiten uit, maar in kortere, herhaalde cycli binnen elke sprint, met meer automatisering en minder formele documentatie.

Blijf leren

Werk met Stack Quora

Hulp nodig met testen, WordPress of SEO?

We helpen teams betere software te leveren en hun sites te laten groeien. Vertel ons waar u mee bezig bent en wij stellen een duidelijke volgende stap voor.

Blijf lezen

Meer handleidingen over testen, AI en moderne ontwikkeling

Genoten van dit artikel? Kies een onderwerp en ga direct naar onze nieuwste tutorials.

Kunstmatige intelligentie

AI-hallucinaties uitgelegd: waarom taalmodellen dingen verzinnen en hoe ze te verminderen

AI-hallucinaties uitgelegd: wat ze zijn, waarom taalmodellen ze produceren, veelvoorkomende typen, hoe je ze kunt verminderen met aarding en aanwijz…

Lees artikel →
DevOps

Omgevingsvariabelen uitgelegd: .env-bestanden, geheimen en configuratie goed gedaan

Omgevingsvariabelen uitgelegd met Python-voorbeelden die we hebben uitgevoerd: ze lezen en instellen, waarom elke waarde een string is, .env-bestand…

Lees artikel →
Softwareontwikkeling

API-snelheidsbeperking uitgelegd: algoritmen, headers en afhandeling van 429-fouten

API-snelheidsbeperking uitgelegd met een simulatie die we hebben uitgevoerd: token-bucket, vast venster, schuifvenster, 429 reacties, headers van sn…

Lees artikel →
Testautomatisering

Spotten in Python: unittest.mock, patch en de fouten die tests doen liegen

Spotten in Python met unittest.mock, getest: Mock en return_value, side_effect, patchen waar een naam wordt gebruikt, spec en autospec, spotdatums e…

Lees artikel →
Softwaretesten

Codedekking uitgelegd: lijn versus filiaaldekking en wat 100% werkelijk betekent

Codedekking uitgelegd met een echte dekking.py-run: dekking van lijnen, vertakkingen en condities, een rapport lezen, waarom 100% dekking nog steeds…

Lees artikel →
Databases & SQL

DELETE versus TRUNCATE versus DROP in SQL: verschillen, terugdraaien en wanneer elk te gebruiken

DELETE versus TRUNCATE versus DROP uitgelegd met geteste SQL: wat elk verwijdert, terugdraaien, triggers, identiteitsreset, snelheid en hoe PostgreS…

Lees artikel →
Databases & SQL

SQL-weergaven uitgelegd: creëer, gebruik en vermijd de valkuilen, met voorbeelden

SQL-weergaven uitgelegd met query's die we hebben uitgevoerd: een weergave maken, live resultaten, kolommen verbergen, prestaties, bijwerkbare en ge…

Lees artikel →
Softwareontwikkeling

TypeScript-interface versus type: echte verschillen, getest met de compiler

TypeScript-interface versus type, gecontroleerd met de echte compiler: wat beide kunnen doen, wat slechts één kan doen, samenvoegen van declaraties,…

Lees artikel →
Softwareontwikkeling

Python *args en **kwargs uitgelegd: flexibele functies met duidelijke voorbeelden

Python *args en **kwargs uitgelegd met code die we hebben uitgevoerd: in- en uitpakken, parametervolgorde, argumenten die alleen trefwoorden en posi…

Lees artikel →
Softwareontwikkeling

Python Lambda-functies: syntaxis, echt gebruik en wanneer u ze niet moet gebruiken

Python lambda-functies uitgelegd met code die we hebben uitgevoerd: syntaxis, sorteren met sleutel, kaart en filter, sluitingen, de laat-bindende va…

Lees artikel →
Kunstmatige intelligentie

Wat zijn AI-agenten? Hoe ze werken, met een eenvoudige agentloop die u kunt uitvoeren

Wat zijn AI-agenten? Een duidelijke gids voor de agentenlus, tools, geheugen en vangrails, met een kleine Python-lus die we hebben uitgevoerd, echte…

Lees artikel →
DevOps

Monitoring versus waarneembaarheid: het echte verschil, met logboeken, statistieken en sporen

Monitoring versus waarneembaarheid uitgelegd: bekende en onbekende fouten, logboeken, statistieken en sporen, een walkthrough voor afrekenincidenten…

Lees artikel →
DevOps

Docker-volumes versus bindingsmounts: bewaar containergegevens op de juiste manier

Docker-volumes versus bind-mounts uitgelegd: waarom containergegevens verdwijnen, benoemde volumes, bind-mounts, tmpfs, Compose-voorbeelden, back-up…

Lees artikel →
Testautomatisering

TDD versus BDD: belangrijkste verschillen, één functie die op beide manieren is gebouwd en wanneer deze moet worden gebruikt

TDD versus BDD uitgelegd met één kortingsfunctie die in beide richtingen is gebouwd: rood-groen-refactor met code die we hebben uitgevoerd, gegeven-…

Lees artikel →
Softwaretesten

Gebruikersacceptatietesten (UAT): proces, checklist en echte voorbeelden

Gebruikersacceptatietesten uitgelegd: wie voert het uit, hoe het verschilt van QA, een proces in zeven stappen, een UAT-testcase-sjabloon, een check…

Lees artikel →
Databases & SQL

SQL NULL-waarden uitgelegd: IS NULL, COALESCE, NULLIF en de te vermijden vallen

SQL NULL-waarden uitgelegd met query's die we hebben uitgevoerd: logica met drie waarden, IS NULL, COALESCE, NULLIF, hoe aggregaten, joins en sorter…

Lees artikel →
Databases & SQL

SQL CASE WHEN-instructie: syntaxis, echte voorbeelden en veelvoorkomende fouten

SQL CASE WHEN uitgelegd met vragen die we hebben uitgevoerd: eenvoudige en doorzochte formulieren, volgorde van de voorwaarden, draaipunten met SUM,…

Lees artikel →
Softwareontwikkeling

Wat is JWT? JSON-webtokens uitgelegd met een werkend voorbeeld

Wat is JWT? JSON Web Tokens uitgelegd: de drie delen, een token gebouwd en waarmee is geknoeid in de code die we hebben uitgevoerd, JWT versus sessi…

Lees artikel →
Softwareontwikkeling

JavaScript-gebeurtenislus uitgelegd: call-stack, microtaken en timers met voorbeelden

De JavaScript-gebeurtenislus uitgelegd met code die we hebben uitgevoerd: call-stack, taak- en microtask-wachtrijen, waarom setTimeout 0 niet onmidd…

Lees artikel →
Softwareontwikkeling

Python-generatoren en opbrengst uitgelegd: bespaar geheugen met echte voorbeelden

Python-generatoren en opbrengst uitgelegd met code die we hebben uitgevoerd: hoe ze pauzeren en hervatten, gemeten geheugenbesparingen, pijplijnen, …

Lees artikel →
Kunstmatige intelligentie

Wat zijn inbeddingen? Vectoren en cosinusovereenkomst eenvoudig uitgelegd

Wat zijn insluitingen? Een gids in duidelijke taal over vectoren, cosinusovereenkomst en semantisch zoeken, met een klein voorbeeld dat we hebben ui…

Lees artikel →
DevOps

Implementatie van blauwgroen versus kanarie: verschillen, afwegingen en hoe te kiezen

Blauw-groen versus kanarie-implementatie uitgelegd: hoe elk werkt, kosten, risico's en terugdraaien, stabiele gebruikersbucket die we hebben getest,…

Lees artikel →
Testautomatisering

Schilferige tests: wat de oorzaak ervan is en hoe u ze voorgoed kunt oplossen

Zwakke tests uitgelegd met demo's die we hebben uitgevoerd: de belangrijkste oorzaken, hoe je er een kunt bevestigen en diagnosticeren, goede oploss…

Lees artikel →
Softwaretesten

Belastingtesten versus stresstesten: verschillen, statistieken en k6-voorbeelden

Belastingtesten versus stresstesten uitgelegd: wat elk bewijst, piek- en soak-tests, de statistieken die er toe doen, waarom gemiddelden misleiden, …

Lees artikel →
Softwaretesten

Testcase versus testscenario: belangrijkste verschillen, voorbeelden en wanneer deze te gebruiken

Testcase versus testscenario uitgelegd: duidelijke definities, een tabel naast elkaar, één functie voor het opnieuw instellen van wachtwoorden, over…

Lees artikel →
Databases & SQL

Optimalisatie van SQL-query's: lees uitvoeringsplannen en repareer langzame query's, met timing

Optimalisatie van SQL-query's getest op een miljoen rijen: lees uitvoeringsplannen, voeg de juiste indexen toe, repareer niet-sargeerbare filters, g…

Lees artikel →
Databases & SQL

SQL UNION versus UNION ALL: verschillen, voorbeelden en geteste prestaties

SQL UNION versus UNION ALL uitgelegd met de query's die we hebben uitgevoerd: duplicaten, de regels volgen beide, een echte databug, gemeten prestat…

Lees artikel →
Softwareontwikkeling

JavaScript Fetch API-tutorial: GET, POST, foutafhandeling en time-outs

Een JavaScript Fetch API-tutorial getest tegen een lokale server: GET en POST, waarom 404 niet gooit, een herbruikbare helper, queryreeksen, time-ou…

Lees artikel →
Softwareontwikkeling

Python-bestandsverwerking: lezen, schrijven, CSV, JSON en pathlib met voorbeelden

Het verwerken van Python-bestanden uitgelegd met code die we hebben uitgevoerd: open modi, met het lezen van grote bestanden, CSV, JSON, pathlib, bi…

Lees artikel →
Softwareontwikkeling

Python-klassen en -objecten: OOP-zelfstudie met echte voorbeelden

Python-klassen en -objecten uitgelegd met code die we hebben uitgevoerd: __init__, methoden, klasse versus instantie-attributen, overerving, eigensc…

Lees artikel →
Kunstmatige intelligentie

Wat is een groot taalmodel? Hoe LLM's werken, uitgelegd zonder de hype

Wat is een groot taalmodel? LLM's uitgelegd in duidelijke taal: tokens, inbedding, aandacht, training, temperatuur- en contextvensters, een kleine d…

Lees artikel →
DevOps

Linux-opdrachten voor beginners: de essentiële terminalgids met voorbeelden

Linux-opdrachten voor beginners, gegroepeerd op taak: navigatie, bestanden, logboeken bekijken, grep, pipelines, machtigingen, processen en archieve…

Lees artikel →
Testautomatisering

Selenium versus toneelschrijver: belangrijkste verschillen, code vergeleken en welke te kiezen

Selenium versus Playwright vergeleken: architectuur, wachten, browser- en taalondersteuning, debuggen, dezelfde test in beide tools, migratieadvies …

Lees artikel →
Softwaretesten

Equivalentiepartitionering: testontwerptechniek uitgelegd met uitgewerkte voorbeelden

Equivalentiepartitionering uitgelegd: hoe je geldige en ongeldige partities kunt vinden, uitgewerkte voorbeelden voor leeftijden, wachtwoorden en ko…

Lees artikel →
Softwaretesten

Ernst versus prioriteit bij het testen van software: verschillen, matrix en echte voorbeelden

Ernst versus prioriteit bij het testen van software uitgelegd: duidelijke definities, een vierwegmatrix met voorbeelden, niveauschalen, wie deze bep…

Lees artikel →
Databases & SQL

Tutorial voor SQL-subquery's: typen, gecorreleerde subquery's en BESTAAN met voorbeelden

Een SQL-subquery-tutorial met query's die we hebben uitgevoerd: scalaire, IN-, FROM- en SELECT-subquery's, gecorreleerde subquery's, EXISTS, de NOT …

Lees artikel →
Databases & SQL

SQL-transacties en ACID uitgelegd: COMMIT-, ROLLBACK- en isolatieniveaus

SQL-transacties en ACID uitgelegd met een bankoverschrijving die we hebben uitgevoerd: COMMIT, ROLLBACK, savepoints, locks, isolatieniveaus, dirty r…

Lees artikel →
Softwareontwikkeling

Git Commands Cheat Sheet: de commando's die je daadwerkelijk gebruikt, met voorbeelden

Een spiekbriefje voor Git-opdrachten, gegroepeerd op taak: setup, staging, branches, remotes, stash, geschiedenis en fouten ongedaan maken, met uitv…

Lees artikel →
Softwareontwikkeling

JavaScript-beloften uitgelegd: vervolgens catch, Promise.all en veelvoorkomende fouten

JavaScript-beloften uitgelegd met code die we hebben uitgevoerd: staten, dan en catch-ketens, foutafhandeling, Promise.all, allSettled, race en wat …

Lees artikel →
Softwareontwikkeling

Zelfstudie Python-woordenboek: methoden, voorbeelden en veelvoorkomende patronen

Een Python-woordenboektutorial met code die we hebben uitgevoerd: dictaten, sleutelmethoden, samenvoeg-, begrips-, tel- en groeperingspatronen en ve…

Lees artikel →
Kunstmatige intelligentie

Wat is RAG? Retrieval-Augmented Generation uitgelegd met een werkend voorbeeld

Wat is RAG? Retrieval-augmented generatie stap voor stap uitgelegd: indexeren, chunken, insluiten, ophalen, een klein werkend Python-voorbeeld, eval…

Lees artikel →
DevOps

Terraform-zelfstudie voor beginners: infrastructuur als code van het eerste bestand tot modules

Een Terraform-tutorial voor beginners: begin zonder cloudaccount, leer init, plan en pas toe, vervolgens variabelen, outputs, status, modules en een…

Lees artikel →
DevOps

Docker versus Kubernetes: belangrijkste verschillen, hoe ze samenwerken en welke u nodig heeft

Docker vs Kubernetes legde uit: wat elk doet, dezelfde app draait met beide, Docker Compose en Swarm vergeleken, de dockershim veranderen en hoe je …

Lees artikel →
Testautomatisering

Pytest-tutorial voor beginners: armaturen, parametriseren en echte voorbeelden

Een pytest-tutorial voor beginners met tests die we hebben uitgevoerd op pytest 9.2: beweringen, armaturen, parametrize, conftest, markers, tmp_path…

Lees artikel →
Softwaretesten

Levenscyclus van softwaretests (STLC): 6 fasen, in- en uitgangscriteria, voorbeeld

De levenscyclus van softwaretesten uitgelegd: zes STLC-fasen met in- en uitstapcriteria, deliverables, een voorbeeld van een uitgewerkte inlogfuncti…

Lees artikel →
Softwareontwikkeling

Git merge vs rebase: verschillen, voorbeelden en wanneer je wat gebruikt

Git merge vs rebase uitgelegd met echte logoutput, een vergelijkingstabel, de gouden regel van rebase en een veilige teamwerkwijze.

Lees artikel →
Softwareontwikkeling

Python list comprehension: syntaxis, voorbeelden en wanneer je het vermijdt

Python list comprehension uitgelegd: syntaxis, filteren, if-else, geneste lussen, gemeten tijden en wanneer een gewone for-lus beter is.

Lees artikel →
Databases & SQL

SQL JOIN uitgelegd met voorbeelden (Inner, Left, Right, Full)

Begrijp SQL joins stap voor stap met voorbeeldtabellen en queries: INNER, LEFT, RIGHT, FULL, CROSS en SELF, plus veelgemaakte fouten en prestatietips.

Lees artikel →