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 software ontwikkelingsbedrijf opgericht in 2007. Wij zijn een team van 1800+ 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.

Geautomatiseerd testen van software: 2x hogere snelheid bij het vrijgeven van functionaliteit

Innowise uitgevoerd geautomatiseerd testen van software om ervoor te zorgen dat de integratie van nieuwe systeemfuncties de integriteit van de bestaande functies niet in gevaar bracht.

Klant

Industrie
Informatietechnologie
Regio
Zwitserland
Klant sinds
2023

Onze klant is een leverancier van cloud ERP-oplossingen die zijn ontworpen om de operationele efficiëntie en veerkracht tegen operationele onderbrekingen te versterken.

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

Uitdaging

De stabiliteit van het ERP-systeem controleren na de integratie van nieuwe functionaliteiten

Onze klant introduceerde nieuwe functionaliteit in hun ERP-systeem en integreerde deze met de bestaande build. Zij vertrouwden op Innowise om de stabiliteit van de geïmplementeerde software te beoordelen. Wij leverden diensten voor het automatisch testen van software, gericht op het identificeren van potentiële showstoppers in het systeem en het oplossen daarvan.

Oplossing

Geautomatiseerde softwaretests inzetten om potentiële showstoppers te identificeren en op te lossen

Innowise verbeterde het ERP-systeem van de klant met een veelzijdige aanpak van geautomatiseerde softwaretests. Het omvatte rook-, functionele en regressietests, allemaal uitgevoerd binnen een continue integratie/continue levering (CI/CD) pijplijn. Smoke testing werd gebruikt om snel de stabiliteit van de belangrijkste functionaliteiten te controleren, terwijl functionele tests van vitaal belang waren om elke functie op correctheid te onderzoeken. Regressietesten waren cruciaal om ervoor te zorgen dat nieuwe updates geen nadelige invloed hadden op bestaande functionaliteiten. De integratie van deze testmethoden in de CI/CD-pijplijn stroomlijnde het ontwikkelingsproces. Deze aanpak maakte een snelle identificatie en oplossing van problemen mogelijk en zorgde voor een consistente uitrol van robuuste functies van hoge kwaliteit in het ERP-systeem.

Evaluatie van testgevallen voor automatisering

Aan het begin kregen we de taak om de testcases die door handmatige testers waren gemaakt, door te spitten. Op basis van onze uitgebreide achtergrond in het testen van software, verdiepten we ons in elke case en voerden we handmatig de stappen van elke testcase uit om de complexiteit en automatiseerbaarheid ervan te beoordelen. Ons doel was om de meest efficiënte manier te bepalen om repetitieve en tijdrovende taken te automatiseren zonder afbreuk te doen aan de nauwkeurigheid van de testresultaten.

Rooktesten implementeren

Onze testers zetten een verzameling vooraf opgenomen rooktests op die bij elke nieuwe build in actie kwamen. Deze tests waren essentieel om te bevestigen dat de belangrijkste functionaliteiten van de software werkten en zorgden voor consistentie en grondigheid. Als een geautomatiseerde test een probleem signaleerde, werd ons team onmiddellijk gewaarschuwd, zodat het probleem snel kon worden geïdentificeerd en aangepakt.

De flexibiliteit van ons proces stelde ons team in staat om eventuele problemen die tijdens de bouw aan het licht kwamen snel aan te pakken. We implementeerden onmiddellijk de vereiste aanpassingen en implementeerden de build zonder vertraging, zodat de verstoring minimaal was.

Functioneel testen integreren in elke sprint

We gingen naadloos over van de breed opgezette verificatie van rooktesten naar de gerichte en nauwgezette functionele testaanpak. Dit zorgde ervoor dat elke nieuwe update op zichzelf effectief was en naadloos aansloot op de bestaande softwarecomponenten. We voerden elke sprint functionele tests uit, zodat elke incrementele ontwikkeling rigoureus werd geëvalueerd en de algehele kwaliteit en samenhang van de software behouden bleef.

Software regressietesten

We volgden een gestroomlijnd maar grondig proces voor het implementeren van geautomatiseerd regressietesten. Ons team zette een testomgeving op die de werkelijke productieomstandigheden weerspiegelde, zodat onze resultaten zo nauwkeurig mogelijk waren. Met Selenium automatiseerden we regressietestscripts, waardoor de efficiëntie aanzienlijk toenam, een cruciale factor voor complexe systemen.

Eenmaal geautomatiseerd, hebben we deze scripts tegen de laatste build uitgevoerd om te controleren op inconsistenties of fouten. Na het uitvoeren van de tests hebben we de resultaten grondig geanalyseerd en eventuele bugs of problemen opgespoord.

Als we problemen ontdekten, pakten we die direct aan door de code aan te passen en de tests opnieuw uit te voeren om de effectiviteit van onze oplossingen te bevestigen. Deze cyclus van testen, analyseren en verfijnen was een constante bij elke nieuwe software-update en zorgde ervoor dat de software stabiel en functioneel bleef. Deze efficiënte benadering van regressietesten was essentieel voor het handhaven van de betrouwbaarheid en prestaties van de software, waardoor het risico op bugs werd verkleind en de gebruikerservaring soepel bleef.

Continue integratie/continue levering (CI/CD) pijplijn

Naast ons rigoureuze testproces hebben we onze tests ook geïntegreerd in de continue integratie/continue levering (CI/CD) pijplijn, waardoor onze ontwikkelingscyclus efficiënter en sneller verloopt. We hebben de Allure tool gebruikt voor gedetailleerde rapportages, die duidelijk inzicht geven in de testresultaten. Dankzij deze integratie konden we een geautomatiseerd systeem opzetten waarbij elke nacht tests werden gestart. Deze nachtelijke testroutine zorgde ervoor dat alle nieuwe wijzigingen onmiddellijk werden geëvalueerd, waardoor problemen snel konden worden geïdentificeerd en opgelost. De integratie van Allure-rapporten in onze CI/CD-pijplijn betekende dat ons team elke ochtend toegang had tot uitgebreide testgegevens, waardoor de besluitvorming werd gestroomlijnd en een constante focus op kwaliteit en stabiliteit werd gehandhaafd. Deze integratie versnelde ons testproces en versterkte de betrouwbaarheid van elke software build die we afleverden.

Gedetailleerde stappen in onze CI/CD-pijplijn:

  • Code: Ontwikkelaars schreven en verfijnden code en zorgden ervoor dat deze voldeed aan onze standaarden voor functionaliteit en ontwerp.
  • Commit: Vervolgens hebben we de bijgewerkte code vastgelegd in ons versiebeheersysteem, waarmee we het eerste controlepunt in de pijplijn markeerden.
  • Bouw: Deze gecommitteerde code onderging een bouwproces, waar het werd omgezet in een uitvoerbare vorm, klaar om getest te worden.
  • Eenheidstests: We onderwierpen de build aan unit tests, waarbij individuele componenten werden getest op correctheid. Dit werd uitgevoerd om te garanderen dat elk onderdeel foutloos functioneerde.
  • Rooktesten: Na de eenheidstests voerden we rooktests uit op de build om snel vast te stellen of kritieke functionaliteiten werkten zoals verwacht.
  • Commit: Na de rooktesten hebben we de code opnieuw gecommit in het versiebeheersysteem, met alle wijzigingen die na de tests zijn gemaakt.
  • Beoordeling: We hebben elke vastlegging grondig herzien en ervoor gezorgd dat de wijzigingen aan onze kwaliteitsnormen voldeden en in lijn waren met de projectdoelstellingen.
  • Staging: De build werd verplaatst naar een staging-omgeving, die nauw aansloot bij de productieopstelling, om verder te testen.
  • Systeemtests: In staging voerden we uitgebreide systeemtests uit om de build te valideren in een omgeving die het echte gebruik simuleerde.
  • Productie: Nadat de build alle testfasen met succes had doorlopen, werd deze uitgerold naar de productieomgeving, waardoor deze beschikbaar werd voor eindgebruikers.

Technologieën

AQA

Python, Pytest, Selenium, Allure

Back-end

Java, Spring, Hibernate

VSC

Git, Gitlab

Cloud

AWS Grafana IAM, SNS, SQS, KMS, RDS (PostgreSQL), S3, SES

DevOps

Gitlab, Docker, Docker Compose

Proces

Agile methodologie en sprintstructuur

In ons project hielden we ons strikt aan de Agile-methodologie en structureerden we ons ontwikkelingsproces in sprints van twee weken. Met deze aanpak konden we het project opdelen in beheersbare brokken, waardoor we consistentie en efficiëntie in elke fase konden garanderen.

Taakbeheer en teamsamenwerking

Aan het begin van elke sprint stelden we duidelijke doelen en taken op, die werden bijgehouden met Jira. Deze tool hield ons team op één lijn en op schema. We gebruikten het niet alleen als een tracker voor taken, maar ook als een centraal punt voor samenwerking en communicatie, zodat elk teamlid altijd op de hoogte was van de laatste ontwikkelingen en prioriteiten.

Sprintbeoordeling en gedetailleerde rapportage

Naarmate het einde van elke sprint naderde, verschoof onze focus naar het consolideren van ons werk en het voorbereiden van de sprint review. We stelden zorgvuldig gedetailleerde rapporten op die onze testdekking en resultaten benadrukten. Deze rapporten waren meer dan alleen een samenvatting van voltooide taken, ze boden een diepgaande analyse van wat we hadden bereikt, welke uitdagingen we tegenkwamen en hoe we deze overwonnen. Ze bevatten ook feedback van onze testprocessen en leerpunten die meegenomen konden worden naar de volgende sprint.

Team

3

AQA Ingenieurs

1

DevOps Engineer

Resultaten

Snellere implementatie van functies en 50% minder bugs in de productie

De implementatie van geautomatiseerd testen voor het ERP-systeem van onze klant resulteerde in aanzienlijke verbeteringen en efficiëntieverbeteringen:

  • Snellere vrijgave van nieuwe functionaliteiten: met geautomatiseerd testen werden nieuwe functionaliteiten twee keer zo snel vrijgegeven in vergelijking met het vorige handmatige proces.
  • Minder bugs: De integratie van CI/CD leidde tot een reductie van 50% van bugs die de productie bereikten, waardoor de betrouwbaarheid van de software aanzienlijk toenam.

Gezien dit positieve resultaat heeft onze klant laten weten enthousiast te zijn over onze samenwerking. Ze erkennen de waarde van onze expertise en de implementatie van geavanceerde technologieën voor hun bedrijf. In de toekomst zullen we nauw samenwerken met onze klant om voort te bouwen op de behaalde successen en om verdere mogelijkheden te onderzoeken om hun systemen en processen te verbeteren.

Duur van het project
  • September 2023 - Doorlopend

2x

toename in functionaliteit releasesnelheid

50%

minder bugs die de productie bereiken

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