Laat uw contactgegevens achter, dan sturen we u ons overzicht per e-mail.
Ik geef toestemming voor het verwerken van mijn persoonlijke gegevens om gepersonaliseerd marketingmateriaal te sturen in overeenstemming met de Privacybeleid. Door de inzending te bevestigen, gaat u akkoord met het ontvangen van marketingmateriaal
Bedankt.

Het formulier is succesvol verzonden.
Meer informatie vindt u in uw mailbox.

Innowise is een internationaal full-cycle softwareontwikkelingsbedrijf bedrijf opgericht in 2007. Wij zijn een team van 1600+ IT professionals die software ontwikkelen voor andere professionals wereldwijd.
Over ons
Innowise is een internationaal full-cycle softwareontwikkelingsbedrijf bedrijf opgericht in 2007. Wij zijn een team van 1600+ IT professionals die software ontwikkelen voor andere professionals wereldwijd.

Web app testautomatisering: 50% minder productiebugs

Innowise heeft geïntegreerd geautomatiseerd testen van webapps om snelle en bugvrije softwareontwikkelcycli te bieden.

Klant

Industrie
Telecom
Regio
België
Klant sinds
2023

Onze klant is een vooraanstaande aanbieder van communicatiediensten die gespecialiseerd is in oplossingen voor internetconnectiviteit, modemverkoop, SIM-kaartlevering en het opzetten van televisiepakketten.

Gedetailleerde informatie over de klant kan niet worden vrijgegeven onder de voorwaarden van de NDA.

Uitdaging

Het verbeteren van testprocessen om het uitbrengen van software van hoge kwaliteit te versnellen

Het interne ontwikkelteam van de klant had aanvankelijk een aangepast framework opgezet voor het uitvoeren van geautomatiseerde tests op hun webapplicatie. Dit framework voldeed echter niet aan de verwachte standaarden, wat resulteerde in haperende tests. De instabiliteit werd nog verergerd door een gebrek aan goede integratie met het systeem voor continue integratie (CI). Dit leidde tot vertraagde feedbackloops en meer handmatige interventie door QA-teams.

Geconfronteerd met deze uitdagingen gaf de klant ons de opdracht om een robuuste oplossing te leveren die hun testprocessen zou stroomlijnen, regressiebugs zou verminderen en hun releasecycli zou versnellen.

Oplossing

QA-mogelijkheden verbeteren door strategische testautomatisering

Bij het aanpakken van de uitdagingen van de klant richtten we ons op het bedenken van een oplossing op maat die hun kwaliteitsborgingsprocessen. Omdat we de inefficiëntie en beperkingen van hun bestaande aangepaste testraamwerk herkenden, gingen we aan de slag om een robuustere, schaalbare en efficiëntere teststrategie te ontwikkelen die specifiek op hun behoeften was afgestemd.

Aanpassing en integratie van framework

Gebaseerd op onze ervaring in geautomatiseerd testen van webappshebben we een dual-framework strategie ontwikkeld, waarbij we zowel Cypress als Playwright gebruiken voor end-to-end testen. We kozen voor deze frameworks vanwege hun unieke eigenschappen, die bekend staan om hun stabiliteit, robuustheid en compatibiliteit met verschillende browsers en omgevingen.

Cypress integratie

Onze AQA engineers selecteerden Cypress vanwege de uitzonderlijke end-to-end testmogelijkheden. Een van de opvallende eigenschappen van Cypress is de native toegang tot browser-API's zonder tussenkomst van servers. Dit versnelt de testuitvoering aanzienlijk en vermindert de complexiteit van end-to-end tests. We pasten Cypress aan om naadloos te integreren met de webapplicaties van de klant, waardoor realtime testuitvoering en visuele testmogelijkheden mogelijk werden. Door deze opzet konden we de werkelijke gebruikersinteracties nauwkeuriger simuleren. Dit zorgt ervoor dat alle gebruikerspaden grondig werden getest voordat de code in productie werd genomen. Innowise implementeerde de lancering van de Cypress-tests binnen GitLab en toonde succesvolle testafrondingen op een externe server na de implementatie. Dit bevestigt de robuustheid en betrouwbaarheid van ons testraamwerk in een continue integratieomgeving.

Integratie van toneelschrijvers

Aan de andere kant bleek Playwright ideaal voor zowel front-end als API-tests vanwege de mogelijkheid om tests uit te voeren in alle belangrijke browsers met minimale configuratie. Het ondersteunt testen in headless mode, wat cruciaal is voor CI-omgevingen, en biedt robuuste tools voor het afhandelen van asynchrone gebeurtenissen en complexe pagina-interacties. We hebben de parallelle testuitvoeringsfunctie van Playwright gebruikt om meerdere tests tegelijkertijd uit te voeren in verschillende omgevingen, waardoor de totale testtijd drastisch werd verkort. Bovendien konden we met de rijke set API's van Playwright aangepaste testscripts maken die complexe gebruikersgedragingen en interacties nabootsen. Dit verbeterde onze testdekking en betrouwbaarheid. Daarnaast voerden we uitgebreide rapportages uit met Allure om de testresultaten te volgen, waardoor we duidelijke inzichten en analyses kregen van onze Playwright-integraties.

Strategisch maatwerk

We hebben elk framework zo geconfigureerd dat het aansluit bij de bestaande infrastructuur van de klant. Het Innowise team introduceerde plugins en extensies die de functionaliteit van de frameworks verbeterden en integratie met andere tools in de tech stack van de klant mogelijk maakten. Zo hebben we Cypress geïntegreerd met de authenticatiediensten van de klant om veilig inloggen tijdens tests mogelijk te maken. We hebben Playwright ook geconfigureerd om automatisch screenshots en video's vast te leggen voor evaluatie in het geval van testfouten.

CI-integratie

Ingenieurs van AQA integreerden Cypress en Playwright in de CI-pijplijn op Gitlab. Deze integratie stelde ons in staat om geautomatiseerde testuitvoeringen op te zetten die werden geactiveerd bij elke code commit. Door deze uitvoeringen te automatiseren, zorgden we ervoor dat elke nieuwe of gewijzigde code grondig werd getest voordat er verder werd gegaan in de ontwikkelcyclus. Deze opzet versnelde niet alleen het testproces, maar hielp ook om bugs en problemen in een zo vroeg mogelijk stadium op te sporen. Dit verkleinde het risico dat defecten in de productie terechtkwamen. De naadloze samensmelting van deze frameworks met Gitlab CI vergemakkelijkte ook een soepelere workflow, waardoor ontwikkelaars zich meer konden richten op functieontwikkeling en minder op repetitieve testtaken.

Rapporteren over GitLab

Om de QA-processen verder te versterken, maakten we gebruik van de geavanceerde rapportagetools van Gitlab, waarbij we ons specifiek richtten op het verbeteren van de transparantie en verantwoording tussen het AQA-team en het management. Door deze tools aan te passen om gedetailleerde, realtime rapporten te genereren, boden we beide teams een hulpmiddel van onschatbare waarde om toegang te krijgen tot actuele gegevens over de status van verschillende tests.

Deze rapporten waren zo ontworpen dat ze allesomvattend maar toch gemakkelijk interpreteerbaar waren, inclusief belangrijke meetgegevens zoals testdekking, faalpercentages en uitvoeringstijden. Dit detailniveau zorgde ervoor dat managers snel inzicht kregen in de effectiviteit van de testinspanningen en gebieden konden identificeren die aandacht nodig hadden, zonder dat hiervoor diepgaande technische kennis nodig was. Voor het AQA team waren deze rapporten een belangrijk hulpmiddel om de voortgang te volgen, terugkerende problemen op te sporen en de kwaliteit van de codebase te valideren.

Architectuurontwikkeling

Innowise ontwikkelde een schaalbare testarchitectuur op maat voor een breed scala aan testen, waaronder rooktesten, regressietesten en uitgebreide end-to-end testen. Deze architectuur is ontworpen om de directe behoeften van het project te ondersteunen en een basis te bieden voor toekomstige testinitiatieven. De modulaire aard van de architectuur maakte eenvoudige aanpassing en schaalbaarheid mogelijk. Naarmate de eisen van de klant veranderden, kon het testraamwerk dus mee evolueren zonder dat er significante aanpassingen nodig waren.

Onze aanpak omvatte het opzetten van een gecentraliseerd testmanagementsysteem dat de organisatie en het bijhouden van testgevallen, resultaten en meetgegevens vergemakkelijkte. Dit systeem was cruciaal bij het beheren van de complexiteit van meerdere testtypen en het bieden van een samenhangende workflow gedurende de testcycli. Door robuuste functies voor gegevensregistratie en resultaatanalyse te implementeren, voorzagen we het QA-team van de benodigde hulpmiddelen om gedetailleerde evaluaties van elke testcyclus uit te voeren, wat essentieel is voor het handhaven van hoge normen voor softwarekwaliteit.

Tests starten in de Xray Jira tool

Om de QA processen verder te verbeteren, lanceerden we tests met behulp van de Xray Jira tool. Dankzij deze integratie konden we testcases rechtstreeks in Jira bijhouden en beheren, waardoor de communicatie en samenwerking tussen QA- en ontwikkelteams werd gestroomlijnd. Door gebruik te maken van de krachtige testmanagementmogelijkheden van Xray, hielden we een uitgebreid overzicht van de testactiviteiten. Het QA team volgde ook de traceerbaarheid van requirements naar defecten en genereerde gedetailleerde testdekking en uitvoeringsrapporten. Deze integratie heeft ons vermogen om problemen snel op te sporen en aan te pakken aanzienlijk vergroot, waardoor we software van hoge kwaliteit kunnen leveren.

Training en empowerment

Omdat we de cruciale rol van kennisoverdracht in het succes van elke technologie-implementatie erkennen, voerden we diepgaande trainingssessies uit die specifiek waren afgestemd op Cypress, gezien de cruciale rol ervan in de teststrategie van de klant. Deze sessies waren zo opgezet dat de interne teams van de klant over de benodigde expertise beschikten om de testframeworks effectief en zelfstandig te kunnen gebruiken, onderhouden en uitbreiden.

De training omvatte een reeks essentiële onderwerpen, van de basisinstelling en -configuratie van testtools tot geavanceerde functies zoals testautomatiseringsscripts en omgevingsbeheer. We hebben ook praktische oefeningen opgenomen die zijn ontworpen om scenario's uit de praktijk aan te pakken waarmee het team te maken kan krijgen, waardoor hun probleemoplossende vaardigheden en vertrouwen in het gebruik van de tools toenemen.

Naast technische training benadrukten we het belang van een strategische mindset in kwaliteitsborgingspraktijken. We begeleidden het team bij het plannen en uitvoeren van tests die in lijn lagen met de bredere bedrijfsdoelstellingen. Deze aanpak zorgde ervoor dat het team niet alleen bedreven was in het gebruik van de technologie, maar ook bedreven in het integreren van QA-processen in hun dagelijkse workflows.

Technologieën

Backend

REST API, JSON, Java

Ontwerp

Figma, Sketch, Zeplin

Diensten

Firebase (Analytics, Crashlytics, Cloud Messaging, App Distribution), GitLab, Jira, Confluence, Strapi, Slack

AQA

Unit-testen + CI/CD-integratie via SonarQube, Cypress, Playwright

Proces

Ontdekking en planning

Het project begon met ontdekkingsbijeenkomsten om de specifieke behoeften en uitdagingen van de klant goed te begrijpen. Deze fase was cruciaal voor het opzetten van Cypress en Playwright, om ervoor te zorgen dat ze compatibel waren met de bestaande systemen van de klant, en de basis te leggen voor een naadloze integratie.

Ontwikkeling en integratie

We hebben Cypress en Playwright aangepast aan de unieke testvereisten van de klant en integreerden deze frameworks in de Gitlab CI pipeline. Deze integratie automatiseerde het testproces, waardoor problemen vroegtijdig kunnen worden opgespoord en opgelost en de versnellen.

Training en overdracht

Onze AQA-specialist gaf uitgebreide trainingssessies over Cypress om het team van de om het team van de klant de vaardigheden te geven om zelfstandig testframeworks te beheren en te optimaliseren. Ze leverden ook gedetailleerde documentatie en best practices ter ondersteuning van doorlopend onderhoud en verbetering van de systemen te ondersteunen.

Communicatie en projectmanagement

Gedurende het project onderhielden we transparante communicatie via Slack en beheerden we taken en de voortgang via Jira. Deze aanpak zorgde ervoor dat alle belanghebbenden consequent op één lijn zaten en het project goed gecoördineerd en op schema lag.

Team

1

Projectleider

1

Teamleider

1

Lead Automation QA Engineer

1

Analist testgegevens

4

Automatisering QA-engineers / SDET-experts

Resultaten

Snellere software release cyclus en 2x minder productie bugs

Na de succesvolle implementatie van de geautomatiseerde testframeworks is de klant overgestapt op een robuuste testautomatiseringsomgeving die aanzienlijke operationele verbeteringen oplevert.

  • Efficiëntere vrijgave: Door gebruik te maken van automatisering werd het tijdrovende handmatig testen drastisch verminderd, waardoor de software sneller kon worden vrijgegeven.
  • Bug reductie: Verbeterde testmogelijkheden resulteerden in een afname van 50% van regressiebugs, wat de effectiviteit van testautomatiseringsprocessen aantoont.
  • Verbeterde stabiliteit van de testomgeving: Door het afstemmen en optimaliseren van testopstellingen hebben we het optreden van haperende tests aanzienlijk geminimaliseerd, wat leidde tot consistentere en betrouwbaardere testresultaten.

Deze strategische revisie pakte de eerste uitdagingen van de klant aan met een op maat gemaakte technologische aanpak en deskundige begeleiding. Door hun team uit te rusten met state-of-the-art tools en diepgaande kennis, hebben we een basis gelegd voor continue schaalbaarheid en operationele verbeteringen.

Duur van het project
  • Augustus 2023 - Doorlopend

3x

snellere release-uitrol

50%

minder productiebugs

Neem contact met ons op!

Boek een gesprek of vul het onderstaande formulier in en we nemen contact met je op zodra we je aanvraag hebben verwerkt.

    Voeg projectgegevens alsjeblieft, duur, technische stapel, IT-professionals nodig en andere relevante informatie toe
    Neem een spraakbericht over uw
    project op om het ons beter te helpen begrijpen
    Voeg indien nodig aanvullende documenten bij
    Bestand uploaden

    Je kunt maximaal 1 bestand van 2MB bijvoegen. Geldige bestanden: pdf, jpg, jpeg, png

    Wij wijzen u erop dat wanneer u op de verzendknop klikt, Innowise uw persoonsgegevens verwerkt in overeenstemming met ons Privacybeleid om u van de juiste informatie te voorzien.

    Wat gebeurt er nu?

    1

    Na ontvangst en verwerking van uw aanvraag, nemen wij binnenkort contact met u op om uw projectbehoeften in detail te beschrijven en een NDA te ondertekenen om de vertrouwelijkheid van informatie te garanderen.

    2

    Na het bestuderen van de vereisten, stellen onze analisten en ontwikkelaars een projectvoorstel met de omvang van de werkzaamheden, teamgrootte, tijd en kosten schattingen.

    3

    Wij regelen een ontmoeting met u om het aanbod te bespreken en tot een overeenkomst.

    4

    We tekenen een contract en beginnen zo snel mogelijk aan uw project te werken.

    Bedankt.

    Uw bericht is verzonden.
    Wij verwerken uw aanvraag en nemen zo spoedig mogelijk contact met u op.

    Bedankt.

    Uw bericht is verzonden.
    Wij verwerken uw aanvraag en nemen zo spoedig mogelijk contact met u op.

    pijl