Eenvoudige test data voorziening

DevOps Software (Quality) Engineers hebben behoefte aan hoogwaardige, up-to-date testdata of bepaalde specifieke testgevallen om een nieuw ontwikkelde applicatie te testen. Deze gegevens zijn vaak moeilijk te vinden in grote productieomgevingen en voor de verspreiding ervan zijn ze afhankelijk van een Database Administrator (DBA) om een database te vernieuwen of om bepaalde testgevallen te extraheren voordat deze klaar zijn om getest te worden. De jacht op deze testgegevens gaat vaak gepaard met lange wachttijden, aangezien dit niet de primaire taak van de DBA is. In dit artikel bespreken we hoe dit proces voor het aanleveren van testgegevens kan worden vereenvoudigd.

h

Content

Test data voorziening

Eenvoudige test data

Test data beschikbaarheid

Test data portaal

Test data op aanvraag

Geautomatiseerde distributie

Test data voorziening

Laten we beginnen met het beantwoorden van de vraag “Wat is testgegevensvoorziening?” Op basis van onze ervaring hebben we het volgende antwoord geformuleerd:

“Test data voorziening is het proces om test data op een ordelijke, veilige – en bij voorkeur geautomatiseerde – manier toegankelijk en beschikbaar te maken voor gebruikers.”

Er wordt veel gezegd en geschreven over het maken van goede test data sets, maar de deliverability wordt vaak onderbelicht. Veel organisaties staan voor uitdagingen op het gebied van het aanleveren van test data. De meeste teams hebben niet de mogelijkheid om hun (test) data sets zelf te vernieuwen. Ze moeten een database verversing aanvragen bij de DBA, wat vaak veel tijd kost en voor de nodige frustraties zorgt.

Distributie van test data is een belangrijk onderdeel van Test Data Management. Test Data Management bestaat in onze optiek uit verschillende onderdelen/stappen (waarvan de volgorde kan verschillen):

 

Eenvoudige test data

De levering van software moet sneller en efficiënter gebeuren. Wachten tot de DBA een databasevernieuwing levert, is kostbare tijdverlies, aangezien het enkele dagen tot weken of zelfs maanden kan duren voordat een database is vernieuwd. Wachten op een verversing van test data zorgt ook voor geïrriteerde Software (Quality) Engineers. Iedereen wacht op de testresultaten, maar het team heeft niet de juiste data om deze tests uit te voeren en de druk blijft toenemen. Er wordt dan gezocht naar snelle (maar niet per se kwalitatieve) oplossingen zoals het handmatig genereren van test data of zelf testgevallen. Gewoon om de software te kunnen testen en de business wat (al dan niet betrouwbare) resultaten te kunnen geven over het geleverde softwareproduct.

Test data beschikbaarheid

Voor softwareontwikkelingsteams die zichzelf kunnen vernieuwen en testgegevens gemakkelijk beschikbaar hebben, zorgt ervoor dat ze hun werk goed kunnen doen. Een van de grootste knelpunten hier is het feit dat DBA’s niet zo gretig zijn om de databasecontrole over te dragen aan Software (Quality) Engineers, bang dat ze iets kapot maken of erger nog, het vernietigen. Maar aangezien het niet de hoofdtaak van een DBA is, wil hij of zij niet te veel tijd besteden aan het vernieuwen van de database, wat resulteert in lange wachttijden voor softwareontwikkelingsteams.

 

Voordelen van eenvoudige beschikbaarheid van testgegevens:

  • Het handmatig genereren van testgegevens is verleden tijd
  • Verspil geen tijd meer aan het zoeken naar testgegevens
  • Bespaar op wachttijd en opslagkosten

Test data portaal

Samenvattend stellen we vast dat zowel softwareontwikkelingsteams als DBA’s baat zouden hebben bij een gemakkelijke distributie van testgegevens. Maar hoe krijgen we dit voor elkaar? Simpel: met behulp van een test data portaal. Een platform dat zowel door DBA’s als Software (Quality) Engineers kan worden gebruikt en benaderd. Beiden kunnen inloggen op dit portaal en via het platform zelf hun eigen test data sets vernieuwen. Uiterst eenvoudig met één druk op de knop. De enige wachttijd is de daadwerkelijke (technische) gegevensverwerkingstijd. DBA’s worden niet constant gestoord en Software (Quality) Engineers hoeven niet te wachten. Ze kunnen de processen zelf aansturen.

DATPROF-platform

Distributie op aanvraag

Op de backend van dit testdataplatform, DATPROF Runtime, zijn bepaalde projecten (ook wel templates genoemd) geïnstalleerd. Deze projecten kunnen bijvoorbeeld data masking (DATPROF Privacy) of data subsetting (DATPROF Subset) templates zijn. In de meeste gevallen worden de templates ontwikkeld door een Software Quality-teamlid met behoorlijke databasekennis, in nauwe samenwerking met de DBA. Na de installatie (meestal gedaan door de DBA) kunnen de projecten worden gebruikt door de geselecteerde teams.

De DBA kan toegang verlenen en toezicht houden op de processen die worden uitgevoerd. Bovendien worden ze verlost van deze niet-primaire taken die ze zo nu en dan hebben gekregen. Het is dus een win-winsituatie. Afhankelijk van je Test Data Architecture kunnen teams met een klik op de knop hun eigen database (subset) openen en vernieuwen en de DBA is er zeker van dat databases niet beschadigd raken.

datprof runtime full
subset-teams-architecture

Geautomatiseerde distributie

Om de levering van test data nog interessanter te maken, kan dit hele zelfverversingsproces ook worden geautomatiseerd. Met behulp van een API kan het testdataplatform worden geïntegreerd met bijna elke orkestratietool of andere tools die je mogelijk gebruikt voor het testen van software. Ons test data platform DATPROF Runtime wordt door klanten gebruikt om databases meerdere keren per week of zelfs meerdere keren per dag te vernieuwen – in plaats van handmatig test data te genereren vanwege de druk die op het testteam wordt uitgeoefend. Met behulp van zo’n testdataportaal kom je eenvoudig aan de juiste, productie-achtige testdata. Op deze manier zijn testgegevens een versneller in plaats van een bottleneck in je hele CI/CD-pipeline.

DATPROF TDM Suite

Data Masking

Maskeer je privacygevoelige gegevens en gebruik deze voor ontwikkeling en testen.

Data Subsetting

Extraheer subsets uit grote complexe databases om het testen te versnellen.

Data Provisioning

Bewaak, automatiseer en genereer je testdata vanuit één centraal testdataportaal.

Data Discovery

Krijg inzicht in datakwaliteit en de opslag van privacygevoelige informatie.

Data Masking

DATPROF Privacy

Data Automation

DATPROF Runtime

Data Discovery

DATPROF Analyze