Definitie
Testen en testbaarheid Testen controleert of software zich onder bekende omstandigheden gedraagt zoals bedoeld, terwijl testbaarheid de mate is waarin een systeem tijdens die controles kan worden bestuurd, geobserveerd en geïsoleerd. AI-systemen hebben conventionele unit-, integratie- en end-to-endtests nodig voor deterministische code, plus evals en foutenanalyse voor probabilistisch modelgedrag, retrievalkwaliteit en workflows voor toolgebruik.
De testpiramide combineert unit-, integratie-, contract-, systeem- en acceptatietests. Traditionele tests verifiëren deterministisch gedrag; evals verifiëren probabilistisch gedrag. Beide zijn nodig in AI-toepassingen.
Testbaarheid betekent dat je componenten zo ontwerpt dat afhankelijkheden, data en modelaanroepen kunnen worden gestuurd of vervangen. Dit maakt fouten reproduceerbaar en verlaagt de kosten van evaluatie.
Engineeringmodus
Testbaarheid betekent dat het AI-systeem gedrag herhaaldelijk genoeg kan aantonen om veilig te kunnen wijzigen. Architectuur moet deterministische naden, traces, fixtures en geïsoleerde modelgrenzen blootleggen. Het ontwerp moet observeerbare uitkomsten en hersteltoestanden definiëren. Het bouwwerk combineert unittests, integratietests, evals en handmatige review. Operations volgen regressies na wijzigingen in model, prompt of data. Het risico is dat je indrukwekkende voorbeelden accepteert die niet reproduceerbaar zijn.
Evaluatiecheck
Vraag welk observeerbaar bewijs zou aantonen dat dit concept goed is toegepast in een echt systeem, een repository of een leeropdracht.
Praktijkvoorbeeld
Een classifier voor supporttickets kan testbaar worden gemaakt met gelabelde historische tickets, grensgevallen en regressiesuites. Wanneer de prompt of het model verandert, draait het team de set opnieuw en inspecteert routeringsfouten. Dit vangt stille degradatie af voordat klanten in de verkeerde wachtrij belanden.
Gerelateerde concepten
Verder studeren: Kent Beck, Test Driven Development , en Martin Fowler, Testing .