De Alliantie is een woningcorporatie in de sociale woningbouw. Dergelijke bedrijven zijn niet alleen verantwoordelijk voor het aanbieden van woningen, maar zijn ook aanspreekpunt over onderhoud en overlast, en verantwoordelijk voor het innen van de huur.

De Alliantie heeft hiervoor een eigen app, waarmee bewoners contact op kunnen nemen. Bewoners kunnen daar bijvoorbeeld reparaties aanvragen, bellen met de klantenservice en overlast melden. Hoessein voegt zich in 2021 bij het team dat verantwoordelijk is voor alles wat met reparaties te maken heeft. Gedurende 2,5 jaar automatiseert hij tests, test hij API’s en voert hij performance-tests uit. “Ik draaide eigenlijk gewoon mee binnen het team.”

Van elkaar leren

Voor Hoessein is de klus bij De Alliantie een mooie nieuwe ervaring: voor het eerst werkt hij niet alleen, maar in een team. “Bij mijn vorige opdrachtgever, voor ik bij Salves werkte, was ik de enige tester binnen een bedrijf. Ik mocht en moest dus heel veel dingen zelf uitzoeken, en kon veel van mijn automatische tests zelf vormgeven. Maar nu ging ik met andere testers samenwerken. Dan moet je allemaal afspraken maken en kun je niet naar eigen inzicht je werkzaamheden uitvoeren”, vertelt hij.

Samenwerken was dan ook even wennen. “Je denkt al snel: kan dit op een andere manier beter? Maar misschien kost het ook wel heel veel tijd om het wiel opnieuw uit te vinden, dus is het beter om de visie van anderen te volgen en jouw visie daarin te verwerken. Je moet een beetje roeien met de riemen die je hebt.”

Ondanks dat hij zich wat moest aanpassen, geeft Hoessein nu juist de voorkeur aan samenwerken in een groep. “Je kunt veel van elkaar leren. Soms ben je in je eentje heel lang met iets bezig, terwijl iemand anders binnen het testteam je daar gewoon sneller mee kan helpen. Ik denk echt dat ik in deze periode meer geleerd heb dan toen ik alleen was.”

Regressietests

Een groot deel van het werk van Hoessein bestaat uit het onderhouden van bestaande tests. Dat gaat verder dan alleen zorgen dat de tests werken: hij onderzoekt ook of tests beter, sneller of slimmer kunnen, zodat er tijd bespaard kan worden. Zo onderzocht Hoessein tijdens zijn opdracht of een regressietest verder geoptimaliseerd kon worden.

Met een regressietest test je of niet-aangepaste onderdelen van een applicatie na wijzigingen elders nog steeds juist werken. Aangezien dergelijke tests na iedere release moeten worden uitgevoerd, loont het om ze te automatiseren. Maar dat was niet bij alle onderdelen mogelijk, dacht Hoessein. Het probleem zat hem in de database: bij een test wordt daar data aan toegevoegd, die na de test weer verwijderd moet worden. Anders is de database niet meer in dezelfde staat als voorheen en kan de test niet meer goed uitgevoerd worden.  Bovendien raakt de database dan vervuilt met testdata. Maar voor zover Hoessein wist, was de database niet automatisch terug te zetten naar de originele staat. Het gevolg was dat zo’n test dan steeds handmatig uitgevoerd moet worden, wat veel tijd kost.

Tijdens het onderzoek naar het mogelijk optimaliseren van de regressietests, bleek dat hier wél een oplossing voor bestaat. “We hebben gekeken of we dit met bijvoorbeeld een software-robot konden automatiseren.” Na enig zoekwerk en een bijdrage van een developer uit het team bleek dat inderdaad mogelijk. “Er was gewoon een API die aan het einde van de test een reset kon toevoegen”, vertelt Hoessein. Na het testen is de database dus weer opgeruimd en kan er weer verder gewerkt worden. Door dat te automatiseren wordt nu veel tijd bespaard. “In feite hebben we de kennis van het team gebruikt.”

Nieuwe uitdaging

Voor Hoessein is het na 2,5 jaar tijd voor een nieuwe uitdaging: hij gaat naar Rijkswaterstaat. Daar gaat hij zich richten op het testen van applicaties voor sluizen. Dat zijn er nogal wat, aangezien er van alles gebeurt als een schip door een sluis gaat. “Het schip vertrekt en vertelt hoeveel lading hij mee heeft en hoe groot hij is. Dat wordt automatisch doorgestuurd, samen met een positiebericht dat elke paar minuten verstuurd wordt. Dan komt een schip bij de sluis of een burg en moet de sluis of brug open. Dat zijn allemaal losse applicaties, waar losse teams op zitten met een eigen tester. Maar ik zit in het team dat de hele keten van applicaties test. Dus alles van vertrek tot de sluizen en bruggen tussendoor en de aankomst.”

Bij deze klus werkt Hoessein opnieuw in een team en de lessen die hij bij De Alliantie leerde, neemt hij mee. “Bij de vorige opdrachtgever werkte ik met veel andere testers in een repo, waar veel automatische tests in staan. Bij Rijkswaterstaat is dat ook het geval. Daarom probeer ik nu van tevoren te onderzoeken welke stijlregels er zijn waar ik rekening mee moet houden, voor ik allerlei tests ga maken. Op die manier voorkom ik dat ik te veel afwijk van de standaarden binnen de nieuwe werkomgeving.”

Ook heeft Hoessein nu meer zelfvertrouwen. “Bij De Alliantie kwam ik in een groot team met heel veel mensen terecht, die ik niet kende. Maar ik heb daar goed werk geleverd, dat blijkt ook uit hoeveel handmatige tests ik heb omgezet naar automatische tests, waardoor de doorlooptijd van de testen verminderd is. Daardoor kunnen we sneller feedback en advies geven over de aankomende release. Dat is allemaal goed is voor het zelfvertrouwen. Dat neem ik mee naar de nieuwe opdrachtgever. ”