S01E03 van Novulo Explained laat zien hoe de Novulo Store enterprise software verandert in een collaboratieve marketplace. Duizenden creators bouwen, delen en hergebruiken componenten om innovatie te versnellen.
Blog
Geautomatiseerd testen: wat brengt het de klant?
Novulo automatiseert het testproces vergaand om de kwaliteit, performance en beheersbaarheid van applicaties te borgen.
Geautomatiseerd testen: wat brengt het de klant?
Het testen van software is een onmisbare kwaliteitscontrole om veranderingen gecontroleerd door te kunnen voeren en een goede werking van de software te garanderen. Novulo heeft deze kwaliteitscontrole in het composable platform doorontwikkeld tot een verregaand geautomatiseerd testproces om de kwaliteit, performance en beheersbaarheid van bedrijfskritische applicaties te borgen. In deze blog bespreken we de vier lagen waar het testen uit bestaat en de unieke testaanpak, waar Novulo enige tijd terug patent op heeft aangevraagd.
Iedere Novulo-applicatie is gebaseerd op een klant specifieke samenstelling van standaard bouwstenen. Deze componenten modelleren de gewenste bedrijfsfunctionaliteit door de gebruikersinterface, business logica, processtromen en/of datamodellering te definiëren. De prescriptive aanpak van het Novulo platform maakt het mogelijk om met deze bouwstenen een unieke applicatie samen te stellen telkens gebaseerd op dezelfde ontwerpprincipes en kwaliteitseisen om stabiliteit van applicaties te garanderen.
Vier niveaus
Op een platform als Novulo, waar je software vrij kan samenstellen uit beschikbare bouwstenen in het platform, is testen van groot belang. Je wilt dat updates of wijzigingen in de componenten of hun samenstelling, geen effect hebben op de continuïteit en kwaliteit ook al is geen enkele applicatie hetzelfde. Dit maakt het adequaat testen van wijzigingen in een klant specifieke omgeving met bijbehorende configuratie op een aantoonbaar goede en gewenste werking cruciaal. Het testen van software in het Novulo-platform is daarom opgebouwd uit vier niveaus van kwaliteitscontrole.
1. Gevalideerde bouwstenen
Bij traditioneel programmeren is testen een onmisbare schakel bij het bouwen en aanpassen van een applicatie. Met unit tests verifiëren programmeurs doorlopend of het fragment broncode waaraan ze werken een correcte werking heeft. In het prescriptive composable platform van Novulo worden componenten gevalideerd door ze in een groter proces mee te testen. Doordat de componenten in de Novulo store allemaal zo’n grondige kwaliteitscheck hebben ondergaan, kunnen gebruikers deze gevalideerde componenten vervolgens probleemloos opnemen in hun applicaties. Het werken met gevalideerde bouwstenen vormt de eerste laag in de kwaliteitscontrole.
2. Model verificatie
Naast het werken met gevalideerde van componenten is het prescriptive composable platform van Novulo ook voorzien van technische modelverificatie voor doorlopende kwaliteitscontrole bij het toepassen van bestaande en het bouwen van nieuwe componenten. In deze tweede laag krijgt de maker voortdurend feedback waar zich precies fouten bevinden in een component en hoe deze te verhelpen zijn. Er vinden geautomatiseerd checks plaats variërend van validatieregels tot ‘mogelijke fouten’ op basis van een wiskundig model. Dit tweede niveau van kwaliteitscontrole, waarbij vastgesteld wordt of alle eigenschappen van de componenten technisch correct zijn gebruikt, voorkomt fouten met bijvoorbeeld invoervelden. Na deze tweede laag in het kwaliteitsproces kan de bouwer ervan uitgaan dat er geen technische problemen te verwachten zijn in de manier waarop componenten zijn toegepast in de applicatie.
3. Functioneel testen
Bij het ontwikkelen van een applicatie moet ook de functionaliteit gevalideerd worden. Bij deze derde stap in de kwaliteitscontrole wordt gecheckt of de wijziging de verwachte uitkomst heeft en een werking die de gebruiker beoogt. In het prescriptive composable platform van Novulo zijn bouwstenen voorzien van informatie over een correcte functionele werking. Het model van componenten bevat informatie over de manier waarop de functionaliteit gebruikt dient te worden (use case) en welke processtappen bij het uitvoeren van de functie betrokken zijn.
Deze extra dimensie in het model van een bouwsteen zorgt ervoor dat het prescriptive composable platform van Novulo adequate handvaten heeft om het functioneel testen op een hoger plan te brengen. Als de componenten van een samengestelde applicatie deze extra informatie bevatten dan is een functionele validatie van een of meerdere onderdelen in de applicatie na het doorvoeren een wijziging geautomatiseerd uit te voeren. Deze derde laag in de kwaliteitscontrole levert grondiger functionele testen op dan met de hand haalbaar is.
4. Integratie en regressietest
De informatie over use cases en processtappen bewijst ook zeker zijn waarde bij regressietesten. Bij de controle of alle applicatieonderdelen goed blijven functioneren na het doorvoeren van één of meerdere wijzigingen is een testscenario voor een integratie- of regressietest automatisch af te leiden en te genereren. Dit maakt testscenario’s mogelijk waarbij een groot aantal aaneengeschakelde processen functioneel getest worden. Evenals het doortesten van wijzigingen in een specifieke klantomgeving.
Door deze scenario’s te combineren met modern testgereedschap als Selenium zijn commando’s naar de browser te sturen die gebruikersinteracties als muisklikken of toetsaanslagen simuleren. Met dit soort gereedschap is ook bedrijfslogica voor zeer complexe scenario’s door te testen als het model de juiste informatie bevat over use cases en processtappen. Zo’n testaanpak zorgt ervoor dat de risico’s van kleine functionele aanpassingen aan omvangrijke bedrijfskritische applicaties binnen de perken blijven. Bovendien maakt deze vierde laag in de kwaliteitscontrole het haalbaar om kleine veranderingen ook onder tijdsdruk door te voeren.
Haak aan bij geautomatiseerd testen
Andere composable platformen hebben weinig tot geen voorzieningen om functionele testen en regressietesten te automatiseren. Als een groot aantal aaneengeschakelde processen niet functioneel doorgetest kan worden, dan wordt het steeds lastiger om het risico op onbedoelde fouten bij updates te minimaliseren. Dit is ook wat Forrester constateert in het rapport ‘We must address testing in low-code development’. In het rapport stelt het onderzoeksbureau vast dat het functioneel testen van composable applicaties momenteel nog grotendeels handwerk is. Naarmate de projecten groter en belangrijker worden, moet ook bij composable softwareontwikkeling het testen op meerdere niveaus plaatsvinden.
Novulo heeft patent aangevraagd op het automatiseren van complexe testscenario’s en zorgt ervoor dat de komende tijd steeds meer testcases beschikbaar komen. Doordat de componenten in uw applicatie de juiste verwijzing naar componenten in het Novulo-platform bevatten, kunnen de bouwstenen van uw applicatie voortdurend opgewaardeerd worden. Dit zorgt ervoor dat u met updates ook over componenten kunt beschikken die het geautomatiseerd testen faciliteren.
Related
Blog


S01E02 van Novulo Explained laat zien hoe een gedeelde ontologie het miljarden-vertalingsprobleem in enterprise software oplost. Minder integraties, meer hergebruik en AI die je business écht begrijpt.

Elke organisatie herkent het dilemma: software kopen of bouwen? In deze eerste aflevering van Novulo Explained laten we zien dat er ook een andere weg is.
