AQA-test af webapps: 6x reduktion i regressionstid

Innowise har integreret en omfattende automatiseret testløsning som en service i alle faser af udviklingsprocessen.

Kunde

Industri
Region
New Zealand
Kunde siden
2022
Vores kunde er på forkant med at skabe transformative uddannelsesrejser, der løfter og styrker enkeltpersoner og virksomheder. Ved at integrere banebrydende læringsteknologier og -strategier kæmper de for forandring ved at fokusere på menneskecentrerede løsninger, hvilket giver organisationer og deres medlemmer uovertruffen værdi.Detaljerede oplysninger om klienten kan ikke videregives i henhold til vilkårene i NDA'en.

Udfordring

Forbedring af webapplikationers effektivitet

Vores kunde kom til os med en specifik udfordring. De havde brug for grundig UI-testning af end-to-end testscenarier på tværs af forskellige browsere til deres webapplikationsrevisionstjeneste. Derudover ønskede de at forbedre deres applikations ydeevne, både på klient- og serversiden. Ud over at løse disse primære problemer ønskede de også et detaljeret rapporteringssystem og en veletableret testinfrastruktur til at understøtte en bred vifte af testmiljøer.

Løsning

Gennemførelse af en omfattende QA-test af webapplikationer

Innowise leverede en omfattende og kontinuerlig testcyklus på tværs af alle faser af softwareudviklingsprocessen. AQA-teamet udformede testkravene og formulerede testplanen og -strategien. Vores aktive engagement og dybtgående ekspertise sikrede, at ansøgning QA-testning Processen var grundig og tilpasset vores kunders unikke behov og mål.

Effektivitet gennem parallel testning

I vores søgen efter at optimere QA-test af webapplikationerbrugte vi en meget effektiv tilgang - parallel testning. I denne strategi udførte vi tolv forskellige teststumper samtidig, hvilket eliminerede ethvert potentielt tidsspild, som sekventiel testning kunne medføre. 

Parallelt kørte testsuiterne uafhængigt af hinanden. Denne strømlinede og agile testmetode fremskyndede den samlede testproces betydeligt og forbedrede produktiviteten og effektiviteten, samtidig med at de højeste kvalitetssikringsstandarder blev opretholdt.

Playwright til omfattende UI-test

Med den stigende kompleksitet i moderne webapplikationer bliver behovet for en robust UI-testramme altafgørende. Playwright kom til os, ikke bare som et værktøj, men som en game-changer. Playwright understøtter flere browsere og tillader native interaktioner, hvilket sikrer tests, der efterligner brugernes adfærd i den virkelige verden. 

Dens evne til at tage skærmbilleder, optage videoer og overvåge netværksaktiviteter gjorde den til en omfattende løsning. Vores team udarbejdede et indviklet sæt testscripts, der udnyttede Playwrights muligheder fuldt ud og sikrede, at ingen sten blev efterladt uvendt.

Test af applikationers ydeevne: lighthouse og k6

Mens brugergrænsefladen spiller en afgørende rolle for at fastholde brugerne, fungerer ydeevnen som den tavse vogter, der sikrer en problemfri brugeroplevelse. LightHouse og k6 blev vores foretrukne værktøjer. LightHouse, et automatiseret open source-værktøj, forbedrede tilgængeligheden markant fra 69 til imponerende 95. Outputtet fra LightHouse gav en lang række anbefalinger, der fungerede som en værdifuld guide til forbedringer. Front-end-udviklere udnyttede denne indsigt og brugte LightHouses målrettede forslag som en plan for forbedring. Denne tilgang strømlinede ikke kun udviklingsprocessen, men hævede også barren betydeligt for applikationens kvalitet og brugertilgængelighed.

Til gengæld gav k6 med sin moderne arkitektur os mulighed for at generere en høj belastning på serversiden og simulere forhold i den virkelige verden for at give en holistisk vurdering. Ved at identificere flaskehalse og andre potentielle faldgruber sikrede vi, at applikationen forblev smidig, selv under pres.

At bygge bro over huller gennem API E2E-tests

Mens vores UI-tests primært fokuserede på brugerinteraktioner, anerkendte vi den afgørende rolle, som dataflow og serverresponser spiller. For at sikre en problemfri brugeroplevelse introducerede vi API end-to-end-tests, der dykkede dybt ned i applikationens kerne.

Disse tests fungerede som et vigtigt bindeled, der harmoniserede brugerinteraktioner i front-end med back-end dataprocesser. De undersøgte dataintegritet og svartider og efterlignede scenarier fra den virkelige verden. Vi vurderede omhyggeligt datapålideligheden, identificerede straks uoverensstemmelser og validerede svartider for at sikre en meget responsiv brugeroplevelse.

Vores omfattende tilgang gav en holistisk evaluering af webapplikationen, så vi kunne identificere og løse potentielle flaskehalse og sikre applikationens uafbrudte drift, samtidig med at dataintegriteten og reaktionsevnen blev opretholdt.

Omfattende rapportering og træning

En robust teststrategi er ufuldstændig uden en klar rapporteringsmekanisme. Det er vigtigt at forstå nuancerne i hver testkørsel, identificere tilbagevendende problemer og formulere handlingsorienterede strategier. Playwrights HTML-rapporter, der er kendt for deres detaljeringsgrad, gav mikroindsigt i individuelle testscenarier. Når de blev kombineret med det brede overblik i Report Portal, forvandlede de rådata til brugbar intelligens. 

Men vores indsats fortsatte ud over blot at give indsigt. Vi organiserede omfattende træningssessioner for at sikre, at kundens testteam var fortrolige med og dygtige til AQA's ansvarsområder. Det omfattede udførelse af tests, der opdagede fejl, og navigering i fejlens livscyklus, især i forbindelse med automatisering. Gennem workshops, hands-on-sessioner og Q&A-runder gav vi kunden mulighed for at tage tøjlerne og køre videre med selvtillid.

AI-baseret rapporteringsmekanisme

Vi forbedrede rapporteringsprocessen ved at integrere et AI-drevet løsning til at identificere og kategorisere testfejl og uoverensstemmelser. Som en del af den første fase blev AI-systemet omhyggeligt trænet ved hjælp af data fra tidligere testfejl, hvor statusser blev tildelt manuelt. Denne grundlæggende fase gjorde det muligt for AI at lære af en bred vifte af output og nøjagtigt forstå nuancerne i forskellige testresultater. 

I den anden fase, efter træningen, foreslog systemet potentielle statusser for nyligt dumpede tests. Disse forslag, som blev givet til AQA'en i marken, kunne gennemgås og godkendes efter behov. AI blev trænet i at identificere en række forskellige statusser, herunder fejl, automatiseringsproblemer og infrastrukturproblemer, hvilket fremskyndede processen med testanalyse og forbedrede effektiviteten og nøjagtigheden af rapporteringsmekanismerne.

Teknologier

TypeScript, React Native, Redux, react-navigation

Python, Django, Celery, Celery beat

TypeScript/JavaScript, Playwright, Lighthouse, K6, Grafana, Rapportportal

VCS

Git, Bitbucket

Elastic Beanstalk, DynamoDB, AWS Grafana IAM, SNS, SQS, KMS, RDS (PostgreSQL), S3, Lambda, SES, KVS

Bitbucket Pipelines, DataDog, Nginx, Docker, Docker Compose

Proces

Vores AQA-team brugte den agile Scrum-tilgang i løbet af QA-test af applikationerhvilket var afgørende for at kunne tilpasse sig kundens skiftende behov. Denne tilgang gjorde det muligt for os hurtigt at levere vigtige elementer som Vision og Scope-dokumentet efter opdagelsen og præsentere et kunderejsekort med en interaktiv prototype i løbet af UI/UX-design fase.

Vi brugte Bitbucket CI til at styre opgaverne effektivt og fokuserede på åben kommunikation for at sikre, at alle var på samme side. Denne enkle strategi forbedrede vores teamwork, reducerede forhindringer og sikrede, at vi altid opfyldte eller overgik kundens forventninger.

Hold

1
Leder af levering
3
Back-end-udviklere
2
Front-end-udviklere
2
AQA
1
Manuel kvalitetssikring

Resultater

6x reduktion i regressionstid og 3x stigning i identifikation af fejl pr. sprint.

Vi skabte en omfattende testramme for UI, API og Test af webapplikationers ydeevneog opnåede 100% dækning af allerede tilgængelige funktioner. For at opretholde kvaliteten implementerede vi natlige regressionstests fra ende til anden og implementeringsbaserede regressionstests og gennemførte 2000 tests på bare 25 minutter.

Desuden forenklede vi rapporteringen ved at bruge AI til at identificere mislykkede og inkonsekvente tests. Vi etablerede et simpelt e-mail-baseret rapportdistributionssystem for at holde alle informeret. Derudover indførte vi visuel regressionstestning for kritiske scenarier, hvilket øgede tilliden til testprocessen. 

Projektets varighed
  • Maj 2022 - december 2022

6x

reduktion i regressionstid

3x

øget identifikation af fejl pr. sprint

    Kontakt os

    Book et opkald eller udfyld formularen nedenfor, så vender vi tilbage til dig, når vi har behandlet din anmodning.

    Send os en talebesked
    Vedhæft dokumenter
    Upload fil

    Du kan vedhæfte 1 fil på op til 2 MB. Gyldige filformater: pdf, jpg, jpeg, png.

    Ved at klikke på Send accepterer du, at Innowise behandler dine personlige data i henhold til vores Politik for beskyttelse af personlige oplysninger for at give dig relevante oplysninger. Ved at indsende dit telefonnummer accepterer du, at vi kan kontakte dig via taleopkald, sms og beskedapps. Opkalds-, besked- og datatakster kan være gældende.

    Du kan også sende os din anmodning
    til contact@innowise.com

    Hvad sker der nu?

    1

    Når vi har modtaget og behandlet din anmodning, vender vi tilbage til dig for at beskrive dine projektbehov og underskriver en NDA for at sikre fortrolighed.

    2

    Når vi har undersøgt dine ønsker, behov og forventninger, udarbejder vores team et projektforslag med forslag med arbejdets omfang, teamstørrelse, tids- og omkostningsoverslag.

    3

    Vi arrangerer et møde med dig for at diskutere tilbuddet og få detaljerne på plads.

    4

    Til sidst underskriver vi en kontrakt og begynder at arbejde på dit projekt med det samme.

    pil