Header Home INFORZA

‘Continuous Testing’ onmisbaar bij agile software-ontwikkeling

17-07-2019

Geautomatiseerd testen verlaagt de kosten door minder fouten, minder capaciteit en hogere schaalbaarheid.

Door de toenemende druk op organisaties om alsmaar sneller goed werkende software uit te rollen zijn DevOps en Continuous Delivery inmiddels de standaard.

Uit het ‘Continuous Testing Report 2019’ van Cap Gemini blijkt dat 58% van de deelnemende bedrijven dagelijks nieuwe software in de lucht brengen waarvan 29% zelfs elk uur. Het grootste knelpunt blijkt de afstemming van het agile ontwikkelproces met de testprocessen. Continuous Testing is in opmars, maar slechts 32% van de bedrijven blijkt dit operationeel goed onder controle te hebben.

DevOps en Continuous Integration en Delivery

Eén van de belangrijkste drijfveren om te starten met DevOps (het samenbrengen van Development en Operations) is de behoefte van bedrijven om sneller in te kunnen spelen op de veranderende markt. Uit onderzoek is gebleken dat organisaties die goed presteren op het gebied van DevOps winstgevender zijn en veel vaker nieuwe software naar productie brengen, met tot 80% minder fouten.

Het kenmerk van de DevOps-beweging is het automatiseren en monitoren van alle onderdelen die een rol spelen bij het bouwen van software, integratie, testen, release, deployment en infrastructuurmanagement.

Continuous Integration en Delivery pas je toe om je software zo snel en zo pijnloos mogelijk in productie te brengen, zónder de kwaliteit in gevaar te brengen. En juist daar hebben veel organisaties moeite mee. Vaak is een organisatorische scheiding tussen de ontwikkelteams en de afdeling die het beheer moet verzorgen de oorzaak. Zowel technisch als organisatorisch dient er dus geoptimaliseerd te worden.

actueel-blog-1-inforza

Om op een continue basis nieuwe software in productie te kunnen brengen dient het software delivery proces compleet, herhaalbaar en betrouwbaar te zijn. Na het toevoegen van een nieuwe feature moet de software in productie natuurlijk wel foutloos blijven draaien. Het inbouwen van kwaliteit heeft dan ook een hoge prioriteit.

Test Automatisering - Continuous Testing

Om continue te kunnen leveren is het van belang expertise in de ontwikkelteams te hebben op het gebied van test automatisering. De testresultaten moeten snel beschikbaar zijn voor de ontwikkelaars zodat fouten direct hersteld kunnen worden. Als het herstel gaat achterlopen op het ontwikkelen dan gaat dit tot vertragingen leiden en extra kosten. Dit geldt nog in veel sterkere mate als de software al gereleased en in productie is.

Meer testers aannemen lijkt een optie, maar niet de meest verstandige. Dit zal de projectkosten namelijk dramatisch verhogen en is bovendien geen schaalbare oplossing. Er blijft dus eigenlijk maar één realistische optie over: automatisering.

Met testautomatisering worden robots geïnstrueerd om de repetitieve, voorspelbare testscripts uit te voeren. Hierdoor kunnen testers zich concentreren op het testen van de nieuwe functies van de laatste sprint.

Met geïmplementeerde testautomatisering zijn het dus nog steeds de testers zelf die testcases ontwerpen en de resultaten monitoren, maar de belangrijkste regressie-inspanningen worden uitgevoerd door robots.

Hoe te automatiseren in de praktijk?

Een Nederlands bedrijf in de logistieke dienstverlening heeft een aantal jaren geleden SCRUM geadopteerd en heeft met C# en het OutSystems Low Code platform diverse websites en maatwerk webapplicaties gebouwd. Gaandeweg liep men tegen een voldongen feit aan: het testen kon de snelheid van softwareontwikkeling niet bijhouden.

Als eerste is geprobeerd het regressietesten met het Selenium Framework te automatiseren. Selenium wordt zeer veel gebruikt voor het testen van websites en webapplicaties. Het probleem van van Selenium is dat er heel veel werk gaat zitten in het maken (coderen) en onderhouden van de testscripts. Als de applicatie dan ook nog sterk aangepast wordt dan moeten de scripts weer aangepast of herschreven worden. Dit heeft als gevolg dat er weer vertraging oplevert bij het ontwikkelen.

Zoals men door het OutSystems platform te gebruiken het opleveren van software versnelt heeft, heeft de organisatie gekozen voor de No Code test automation tool van LEAPWORK. Hierbij worden de test cases volledig visueel opgebouwd. Perfect voor niet-technische gebruikers als voor iedereen die gewoon geen tijd wil besteden aan programmeren. Door deze manier van werken is men nu eindelijk in staat om het testen in de pas te laten lopen met de snelheid van ontwikkelen die men middels Agile en SCRUM heeft bereikt.

Dit artikel delen:

Deze website maakt gebruik van cookies

Deze website gebruikt cookies. Door gebruik te maken van deze website, geef je aan akkoord te zijn met het gebruik van cookies. Lees meer

Sluiten