Het inrichten van een testomgeving: essentiële stappen en overwegingen

Het inrichten van een testomgeving is een essentieel onderdeel van het softwareontwikkelings- en testproces. Een goed ingestelde testomgeving helpt bij het identificeren van eventuele fouten in een systeem voordat het live gaat, zodat klanten en gebruikers niet worden geconfronteerd met problemen. Deze omgeving dient als een veilige ruimte waarin ontwikkelaars, testers en beheerders wijzigingen kunnen testen zonder gevolgen voor de productieomgeving. In dit artikel bespreken we de fundamentele aspecten van het inrichten van een testomgeving, inclusief de essentiële componenten, de betrokken partijen en de voordelen van een goed geconfigureerde testomgeving. Bovendien wordt aandacht besteed aan de praktische stappen bij het aanvragen en koppelen van een testomgeving, evenals de rol van beleid en volwassenheidsniveaus in het beheer van een testomgeving.

De essentie van een testomgeving

Een testomgeving bestaat uit een specifieke opstelling van software, hardware en netwerkomstandigheden die ervoor zorgen dat testcases kunnen worden uitgevoerd. Het doel is om testuitvoeringen te ondersteunen met geconfigureerde hardware, software en netwerkcomponenten die gelijkend zijn aan de productieomgeving. In sommige gevallen kan een testbed ook de combinatie van testomgeving en testgegevens omvatten. De kwaliteit van het opzetten van een testomgeving heeft directe invloed op de succesvolle uitvoering van tests. Gebreken in dit proces kunnen leiden tot extra kosten, vertragingen en verhoogde risico’s voor de klant.

Het instellen van een testomgeving houdt meerdere belangrijke gebieden in, waaronder:

  • Systeem en applicaties: Het testen van een systeem vereist dat alle toepassingen die van invloed kunnen zijn op het systeem gedetailleerd worden ingevoerd.
  • Testgegevens: Accurate en representatieve testgegevens zijn essentieel voor het valideren van het gedrag van een systeem.
  • Database server: De database moet worden ingesteld met testgegevens en configuraties die gelijkend zijn op de productieomgeving.
  • Front-end-loopomgeving: De gebruikersinterface moet worden getest op volledigheid en prestaties.
  • Clientbesturingssysteem en browser: Aangezien de interactie van gebruikers met een systeem via diverse platforms kan plaatsvinden, is het belangrijk om te testen op verschillende besturingssystemen en browsers.
  • Hardware: De hardware, zoals de server en het besturingssysteem, moet worden gekoppeld aan de testomgeving.
  • Netwerk: Het netwerk moet worden geconfigureerd om te corresponderen met de productieomstandigheden.
  • Documentatie: Het beschikbaar stellen van referentiedocumenten, configuratiehandleidingen, installatiehandleidingen en gebruikershandleidingen is essentieel voor het succesvol beheer van de testomgeving.

Het opzetten van een testomgeving vereist een samenwerking tussen verschillende partijen, zoals systeembeheerders, ontwikkelaars en testers. Soms worden ook gebruikers of techneuten betrokken bij het testproces, vooral wanneer het gaat om gebruikerservaring of functionele tests.

De stappen bij het instellen van een testomgeving

De installatie van een testomgeving begint met het opzetten van een testserver. Deze server dient als de basis van de testomgeving en moet worden geconfigureerd zodat het gelijkend is aan de productieomgeving. Vervolgens worden testgegevens en configuraties geïmplementeerd. In veel gevallen wordt gebruikgemaakt van een kopie van de productieomgeving, waardoor de testomgeving representatief is voor de werkelijke omstandigheden waarin het systeem zal functioneren.

Testomgeving aanvragen en koppelen

Een testomgeving kan worden aangevraagd via bepaalde platforms, zoals AFAS Online. Voor het aanvragen van een nieuwe testomgeving is het belangrijk om eerst te controleren of er al een bestaande testomgeving aanwezig is. Als dat het geval is, moet de oude testomgeving eerst worden verwijderd om conflicten en verwarring te voorkomen. Het aanmaken van een nieuwe testomgeving kan op twee manieren: door de productieomgeving te kopiëren of door een bestaande testomgeving te dupliceren. Bij het kopiëren van een productieomgeving worden de laatste 7 dagen aan bijlagen van dossieritems meegenomen, terwijl oudere bijlagen niet worden opgenomen. Er is ook een alternatief voor het snel testen van wijzigingen, waarbij de testomgeving direct wordt gemaakt zonder bijlagen. Deze optie heeft invloed op de prestaties van de omgeving, maar is handig voor het testen van kleine wijzigingen.

Na het aanmaken van een testomgeving is het belangrijk om deze te koppelen aan een InSite, zodat gebruikers toegang kunnen krijgen. De test-InSite wordt standaard automatisch gepubliceerd, maar in sommige gevallen is handmatige interventie nodig. De naam van de testomgeving begint meestal met een "T", bijvoorbeeld T12345AB, en wordt benaderd via een aparte tegel. Als de test-tegel niet zichtbaar is, kan dit wijzen op een probleem met rechten of inloggegevens.

Configuratie van de testomgeving

Nadat een testomgeving is aangemaakt, is het essentieel om deze correct te configureren. Een testomgeving is namelijk een kopie van de productieomgeving, maar moet zich niet op precies dezelfde manier gedragen. Zo moet bijvoorbeeld het versturen van e-mails in de testomgeving worden uitgeschakeld om ervoor te zorgen dat gebruikers in de productieomgeving niet worden geplagt door testgerelateerde communicatie. Dit kan worden gedaan via de Administrator Console, waar instellingen zoals e-mailverkeer, imports en andere diensten kunnen worden uitgeschakeld. Deze instellingen blijven actief, zelfs wanneer een nieuwe versie van de productiedatabase wordt geïmporteerd. Het is echter belangrijk om deze services weer uit te schakelen voordat een nieuwe versie van de productiedatabase wordt ingevoerd.

De rol van beleid en volwassenheidsniveaus

Het beheer van een testomgeving wordt sterk beïnvloed door beleid en volwassenheidsniveaus. In de norm CH.04 testomgeving wordt het belang van een formele beleidsregel voor het gebruik van een testomgeving benadrukt. Deze beleidsregel moet duidelijk zijn en voor alle betrokken partijen toegankelijk. De testomgeving moet worden ingesteld zodat het gelijkend is aan de productieomgeving in aspecten zoals workload, stress, besturingssystemen, applicatiesoftware, databases en netwerken.

Er zijn vijf volwassenheidsniveaus die kunnen worden aangehouden, waarbij het streefniveau volwassenheidsniveau 3 is. Bij dit niveau is er een formele beleidsregel in werking en is de testomgeving volledig los van de productieomgeving. Dit zorgt ervoor dat wijzigingen en tests in de testomgeving geen gevolgen hebben voor de productieomgeving.

Bij lager volwassenheidsniveaus, zoals ad hoc of herhaalbaar, is er een groter risico op fouten en verstoringen in de productieomgeving. Bij ad hoc is er bijvoorbeeld geen beveiligde testomgeving gedefinieerd, wat kan leiden tot ongeplande problemen. Bij herhaalbaar is er wel een informeel beleid in werking, maar is er nog geen duidelijke structuur voor het testproces.

Uitdagingen bij het inrichten van een testomgeving

Het instellen van een testomgeving is niet zonder uitdagingen. Een van de belangrijkste problemen is het afgelegen karakter van de testomgeving. Testen worden vaak uitgevoerd op een aparte server, wat kan leiden tot een gebrek aan samenwerking tussen teams. Gecombineerd gebruik van resources is niet altijd eenvoudig, wat resulteert in inefficiënte planning van integratie en langere insteltijden.

Een andere uitdaging is de complexiteit van de testconfiguratie. Het opzetten van een representatieve testomgeving vereist niet alleen technische kennis, maar ook een diepgaande begrip van de vereisten van de toepassing. De uitdagingen worden verder vergroot wanneer meerdere teams tegelijkertijd testen uitvoeren, wat kan leiden tot conflicten en inconsistenties in de testgegevens en configuraties.

Testen in productie: wanneer is het toepasbaar?

In sommige gevallen kan testen in productie een nuttige aanvulling zijn op het testproces. In de autosport, bijvoorbeeld in Formule 1, wordt continu getest gedurende de race. Ook in andere sectoren zoals de automotive en softwareindustrie wordt testen in productie gebruikt om de prestaties van systemen en toepassingen te optimaliseren. Een bekend voorbeeld is het gebruik van A/B-testing in productieomgevingen, waarbij twee versies van een systeem tegelijkertijd worden getest om te zien welke versie beter presteert.

Een andere toepassing van testen in productie is het gebruik van betatesters. Hierbij wordt een relatief afgeronde versie van een product beschikbaar gesteld aan een selecte groep gebruikers om feedback te ontvangen. Bekende voorbeelden zijn nieuwe versies van besturingssystemen zoals Android of iOS. Ook bij projecten zoals de ontwikkeling van de Covid-19 app wordt testen in productie gebruikt om feedback uit een representatieve bevolkingsgroep te verkrijgen.

Hoewel testen in productie in bepaalde situaties nuttig kan zijn, zijn er ook risico’s verbonden aan deze aanpak. Het is belangrijk om het testproces zorgvuldig te plannen en te beheersen om te voorkomen dat testen negatieve gevolgen hebben voor gebruikers of klanten.

Conclusie

Het inrichten van een testomgeving is een complex maar essentieel proces in de softwareontwikkeling. Een goed ingestelde testomgeving helpt bij het identificeren van fouten en het testen van wijzigingen zonder dat dit gevolgen heeft voor de productieomgeving. Het proces vereist samenwerking tussen verschillende partijen, zoals ontwikkelaars, testers en beheerders, en houdt het opzetten van hardware, software, testgegevens en configuraties in.

Het aanvragen en koppelen van een testomgeving kan op verschillende manieren gebeuren, afhankelijk van de behoeften van het project. Het is belangrijk om de testomgeving correct te configureren om ervoor te zorgen dat testen niet negatieve effecten hebben op de productieomgeving. Bovendien is het beheer van een testomgeving sterk beïnvloed door beleid en volwassenheidsniveaus. Bij hogere volwassenheidsniveaus is er een formele beleidsregel in werking, wat leidt tot een betere beheerbaarheid van de testomgeving.

Hoewel testen in productie in bepaalde gevallen nuttig kan zijn, zijn er ook risico’s verbonden aan deze aanpak. Het is daarom belangrijk om het testproces zorgvuldig te plannen en te beheersen.

Bronnen

  1. Wat is een testomgeving?
  2. Hoe kan ik een nieuwe testomgeving aanvragen?
  3. Norm CH.04 Testomgeving
  4. Configureren van de testomgeving
  5. Testen in productie: feit of fictie?

Related Posts