Heel veel testen
IT is tegenwoordig heel complex. Toch moet je zeker weten dat geïntegreerde software functioneel werkt en blijft werken. Dat betekent dus maximaal geautomatiseerd testen op OTA-omgevingen. Alleen zo kun je ervoor zorgen dat gebruikers zo min mogelijk problemen hebben en dat je snel een oplossing kunt bieden als er wel iets misgaat. Dat kan niet zonder geautomatiseerd testen. Bij IVO Rechtspraak zijn we hier volop mee bezig.
Verschillende platforms
In ons DevOps team werken we met diverse tools voor het functioneel en technisch testen van applicaties die we voor de Rechtspraak ontwikkelen en beheren. Naast MijnWerkomgeving, een webapplicatie voor vreemdelingenrechtzaken, is dat bijvoorbeeld Schrijfhulp. Met die toepassing kunnen rechters en griffiers eenvoudig vonnissen samenstellen. De onderliggende services ondersteunen deze applicaties op verschillende platforms, zoals Oracle en OpenShift. Welke tools we voor het testen gebruiken, hangt af van het platform.
Hippe tools
Op ons Oracle-platform testen we bijvoorbeeld met tools zoals Ready API, Bamboo en UFT. Maar voor onze services op het OpenShift Container Platform gebruiken we Cypress en Karate. Dat zijn nieuwe, hippe tools waarmee je heel snel en makkelijk geautomatiseerd test. Welke tool we ook gebruiken, alles draait erom applicaties goed functioneel werkend op te leveren. Daarvoor moet je soms diep de techniek in om de code te begrijpen en toe te passen.
Snel testdata genereren
Met ReadyAPI testen we het XML-berichtenverkeer om te zien of gewijzigde code wel doet wat-ie moet doen. Ook gebruiken we deze tool voor het aanmaken van testdata om zaken snel klaar te zetten om verder handmatig te testen in bijvoorbeeld MijnWerkomgeving. Stel, er is een aanpassing geweest in een scherm. Met ReadyAPI kun je er aan de hand van een casus voor zorgen dat je een zaak klaarzet in een bepaalde status. Dat scheelt veel werk, omdat je dan al een startpunt hebt om het scherm handmatig te testen.
Continuous Delivery en Continuous Integration
De testen die we in ReadyAPI maken, zetten we in Bamboo. Deze tool triggert veelal dagelijks automatische servicetesten. Met de hand is dat niet te doen, want dan zouden we meer dan 100 testen handmatig moeten starten. In de testoutput kan aan het licht komen dat aanpassing van de code ervoor heeft gezorgd dat services onderling niet meer goed werken. Door ons te focussen op ‘Continuous Integration’ van software zorgen we dat applicaties voor de klant blijven werken.
Als DevOps-team zijn we ook verantwoordelijk voor het releasen van software voor onze applicaties. Daarbij moeten we in staat zijn issues op productie acuut te fixen. Daar helpt Bamboo ons om ‘Continuous Delivery’ toe te passen.
Automatische regressietest
UFT is nog zo’n fancy tool. Daarmee testen we aan de front-end of alles goed gaat na gewijzigde functionaliteit, patches of updates. UFT test ook niet aangepaste processtromen, die worden doorlopen van begin tot eind. Zo’n processtroom kan bijvoorbeeld zijn dat een zaak naar een rechtbank gaat, daar bij de griffier terechtkomt en vervolgens bij de rechter. Klopt de code niet, dan stopt het proces. Een handmatige regressietest kost je weken. Nu weet je bij een volledige regressietest met een paar uur of alles in orde is.
Senior tester Jerrie (59 jaar) zit al jaren in de IT. Hij werkte lange tijd voor een groot ICT-bedrijf, onder meer als functioneel beheerder en tester. Sinds 2007 zit hij bij IVO Rechtspraak. Daar koos hij definitief voor het vak van testen. “Daarbij moet je ook code kunnen lezen en toepassen en heb je kennis van beheer nodig. Die veelzijdigheid om samen in een team te leren en te experimenteren, dat vind ik net het leuke eraan.”