Regelmatig delen wij interessante cases die wij in onze dagelijkse contacten met testprofessionals tegenkomen. Het delen van praktijkcases en best practises op het gebied van software testen, draagt bij aan de missie van het Testersuite Team. Deze missie is erop gericht de kans op risico's en fouten in software te verkleinen door slimmer, beter en eenvoudiger te testen. In deze blog gaat het over testen bij continuous deployment.
Continuous deployment
In een gesprek met een testprofessional kwam de toenemende afhankelijkheid van SaaS-oplossingen naar voren. Dit is op zich een interessante ontwikkeling. Maar het brengt wel met zich mee dat je kritisch moet kijken naar de wijze waarop SaaS-oplossingen dicteren hoe je bedrijfsprocessen inricht.
De testprofessional: Als je gebruik maakt van cloudoplossingen zal het principe van continuous deployment alleen maar toenemen. Als klant moet je vervolgens maar afwachten welke functionaliteiten er wanneer beschikbaar komen. Hierdoor moet je ervoor waken dat je door continuous deployment niet zomaar je werkproces moet omgooien.
Als gebruiker moeten wij toch echt de gewijzigde en nieuwe functionaliteiten van een cloud applicatie handmatig testen voordat we daar gebruik van maken.
Maar bij continuous deployment is toch sprake van permanent geautomatiseerd testen? Vroegen we onze gesprekspartner. Zijn antwoord was verhelderend: Vanuit de ontwikkelaars kant, oftewel de leveranciers, wel ja. Maar dit zijn vooral technische testen. Als gebruiker moeten wij toch echt de gewijzigde en nieuwe functionaliteiten van een cloud applicatie handmatig testen voordat we daar gebruik van maken.
Afspraken met leveranciers
Tot zover was het voor ons duidelijk wat het probleem van deze testprofessional is. De vraag die volgt is, hoe ga je hier als gebruiker (klant) van een SaaS-tool mee om? De testprofessional: Je zal als klant heldere afspraken met leveranciers moeten maken. Daarnaast moet je een goede impact analyse doen wanneer er een nieuwe versie van de SaaS-tool aankomt. Op basis van deze analyse wordt duidelijk welke processen worden geraakt en wat er getest moet worden. Het is belangrijk om deze manier van testen en in gebruik nemen van nieuwe versies te borgen binnen je organisatie.
Hoe borg je de kwaliteit van cloudapplicaties?
Het gesprek met deze testprofessional brengt dus een aantal zaken naar voren waarover je moet nadenken als je te maken hebt met continuous deployment:
- Welke eisen stel je aan de leveranciers m.b.t. uitrollen van nieuwe versies?
- Hoe richt je het lifecyclemanagement van je applicatielandschap in?
- Waar in de organisatie ligt de kwaliteitsborging van cloudapplicaties?
- Bij wie in de organisatie ligt het eigenaarschap voor het testen van cloudapplicaties?
- Welk mandaat heeft de tester van cloudapplicaties?
- Hoe laat je eindgebruikers meedoen met het testen van nieuwe functionaliteiten?
Wat vindt het Testersuite Team?
Binnen het Testersuite Team heerst de mening dat de inzet van cloudapplicaties je niet ontslaat van handmatig testen. Ook niet wanneer er sprake is van geautomatiseerd testen zoals bij continuous deployment. Geautomatiseerd testen is een belangrijke aanvulling op bestaande testwerkzaamheden.
De inzet van cloudapplicaties ontslaat je niet van handmatig testen.
Echter is geautomatiseerd testen niets anders dan checken van wat al bestaat. Je checkt namelijk in een stabiele omgeving dat wat er al is, steeds weer op dezelfde wijze. Exploratory testing is iets anders en zal, zolang er geen sprake is van kunstmatige intelligentie, altijd mensenwerk blijven. Wil je dit goed organiseren dan is een testmanagement tool onontbeerlijk.