QA-automatisering i det digitale arbejdsområde: 105 gange hurtigere testning

Innowise udviklede et QA-automatiseringssystem til en international leverandør af digitale arbejdspladsløsninger, der strømliner deres testproces på tværs af flere komponenter, herunder e-mail, kalender, chats og fillagring. 

Kunde

Industri
Informationsteknologi
Region
EU
Kunde siden
2022
Vores kunde, Zextras, er en international udbyder med speciale i open source-løsninger til den digitale arbejdsplads. Deres flagskibsprodukt, Carbonio, er designet til at understøtte telekommunikations- og internetudbydere med fokus på digital suverænitet og dataejerskab for organisationer.

Udfordring

Håndtering af regressionsproblemer og ustabilt indhold i en kompleks, mangefacetteret digital arbejdspladsløsning

Carbonio er en alt-i-en samarbejds- og kommunikationsløsning, der tilbyder en række integrerede funktioner. Den præsenteres både som webklient og mobilapplikation og indeholder sin egen e-mailserver, kalender, kontaktstyring, en kontorpakke til samarbejde om dokumenter, et virtuelt drev, instant messaging, videokonferencefunktioner og understøttelse af tredjeparts e-mailklienter som Outlook eller Thunderbird. Platformen sikrer høj tilgængelighed og effektiv styring af datalagring.

Efterhånden som platformen fortsatte med at udvikle sig, blev behovet for en avanceret testramme mere og mere tydeligt. Carbonio, der omfatter en række forskellige komponenter, hver med forskellige udviklingsmiljøer og versioner, gav betydelige testudfordringer.

Mindre opdateringer førte ofte til regressionsproblemer, som ikke kun påvirkede de enkelte moduler, men også deres integrerede drift. Kundens team stødte også på udfordringer med ustabilt dynamisk indhold, som komplicerede problemløsningen.

Løsning

Implementerede automatiserede softwaretesttjenester for at strømline UI-test, håndtere regression og problemer med indlæsning af indhold

Inden for automatiseret softwaretestning har vi udviklet en automatiseret QA-løsning for at løse kompleksiteten i Zextras' Carbonio-platform. Dette system fokuserede på at strømline UI-testprocessen på tværs af forskellige komponenter, herunder e-mail, kalender, chat og fillagring. Vi integrerede avancerede automatiseringsværktøjer til effektiv håndtering af regressionstest og problemer med indlæsning af dynamisk indhold. Systemet blev skræddersyet til at fungere med forskellige udviklingsmiljøer. Ved at udnytte vores ekspertise inden for QA-automatisering muliggjorde vi en mere effektiv koordinering mellem forskellige teams og forbedrede testeffektiviteten for den multifunktionelle Carbonio-platform betydeligt.

Automatiseringsarkitektur

For at opfylde de specifikke krav til Zextras Carbonio-platform har vi designet en avanceret automatiseringsarkitektur, der nøje efterligner virkelige brugerinteraktioner og arbejdsgange. Denne arkitektur omfatter en række nøglekomponenter:

  • Ramme for dramatiker: Vi valgte Playwright på grund af dets evne til at efterligne brugerhandlinger på tværs af forskellige browsere og platforme. Det er i stand til at håndtere komplekse scenarier som filuploads, downloads og interaktioner med forskellige webelementer.
  • CI/CD-integration: Vores team integrerede problemfrit automatiseringssuiten i de eksisterende CI/CD-pipelines (Continuous Integration and Continuous Deployment). Denne integration giver mulighed for automatiserede testudførelser som en del af build- og deployment-processerne, hvilket sikrer, at eventuelle problemer identificeres tidligt i udviklingscyklussen.
  • Understøttelse af dynamiske miljøer: Vi har designet arkitekturen til at være miljøagnostisk. Test kan udføres i forskellige miljøer ved blot at angive serverens URL. Denne fleksibilitet er afgørende for at kunne teste Carbonios moduler i forskellige konfigurationer og opsætninger.
  • Scenariebaseret testning: Vi udviklede et omfattende sæt testscripts, der dækker almindelige brugerscenarier. Disse scenarier spænder fra grundlæggende funktioner som afsendelse/modtagelse af e-mails i e-mailmodulet til mere komplekse interaktioner i fillagrings- og videokonferencemodulerne.
  • Datadrevet tilgang: Vi brugte en datadrevet testtilgang til at køre det samme sæt tests med forskellige datasæt, hvilket gav en grundig dækning af forskellige use cases og edge cases.
  • Rapportering og overvågning: Automatiseringsrammen omfatter detaljerede rapporterings- og overvågningsværktøjer. Efter hver testkørsel genererer den rapporter, der indeholder oplysninger om testudførelse, skærmbilleder af fejl og logfiler. Denne detaljerede rapportering hjælper med hurtig identifikation og løsning af problemer.

Dækning af kritisk vej-scenarie

Som en del af de automatiserede softwaretesttjenester til Carbonio-platformen fokuserede vi på grundigt at dække kritiske scenarier, som er afgørende for platformens daglige drift og funktionalitet. I løbet af det første år udviklede og implementerede vores dedikerede team, der består af to erfarne automatiseringseksperter, automatiserede tests for over 650 af disse vigtige scenarier. De omfattede nøglefunktioner på tværs af platformens moduler, herunder e-mailtransaktioner, kalenderplanlægning, fillagring og chatinteraktioner. 

Browser-understøttelse og ressourceoptimering

Inden for vores automatiserede softwaretestning var et vigtigt fokus at sikre omfattende browserunderstøttelse og samtidig optimere ressourceforbruget. Vi gik målrettet efter de mest populære browsere - Chrome, Safari, Firefox og Edge. For at komme problemer i forkøbet blev vores automatisering udført på browserdriverne til Chromium, Webkit og Firefox.

Denne tilgang strømlinede vores ressourcer og fremskyndede testprocessen. Ved at udnytte den fælles Chromium-motor, der bruges af både Chrome og Edge, var vi i stand til primært at udføre tests på Chromium og minimere behovet for at duplikere indsatsen på tværs af to browsere. 

Desuden gav vores evne til at opdage problemer i browserdriverne en fordel: Ved at identificere og adressere problemer i driverne kunne vi løse dem, før de manifesterede sig i de faktiske browserversioner, som typisk opdateres til de nye driverversioner med 1-2 ugers forsinkelse. Denne proaktive holdning til problemløsning sikrede, at platformen forblev stabil på tværs af alle understøttede browsere.

Proaktiv opdagelse af problemer

Vores problemopdagelsessystem bidrog i høj grad til integriteten af Carbonio-platformens testproces. Ved hjælp af vores automatiseringsværktøjer var vi i stand til at opdage problemer med browserdrivere på et tidligt tidspunkt. Denne forudseenhed var medvirkende til at foregribe potentielle problemer, der kunne opstå i senere browserversioner, så vi kunne anvende rettelser, før de kunne påvirke brugeroplevelsen.

Omfattende rapporteringssystem

Sideløbende implementerede vi et omfattende rapporteringssystem, som i høj grad forbedrede vores evne til at diagnosticere og løse problemer hurtigt. Hver automatiseret test genererede detaljerede rapporter, som ikke kun indeholdt tekstoplysninger, men også visuelle hjælpemidler som skærmbilleder og videoer. Disse rapporter var især nyttige i scenarier, hvor det var nødvendigt med en visuel bekræftelse af testens resultat. Desuden indeholdt rapporterne logfiler over alle applikationsanmodninger, hvilket gav vores udviklere detaljerede data til at finde frem til de grundlæggende årsager til problemer med indlæsning af indhold.

Teknologier

Playwright, Fiddler, Jenkins, Allure, GitHub

Java 11, Java 17, LDAP, Soap, Maven, Linux, Bash, Perl, AWS, Java Lambda

Systemudvikling

Prometheus, Grafana

Versionskontrol

GitHub

Proces

Vores proces for automatiserede softwaretest udfoldede sig gennem en række strukturerede faser, som hver især blev forstærket af vores tekniske valg og strategiske metoder:

  • Analyse af krav: Vores første skridt var at dykke dybt ned i kundens behov og de specifikke udfordringer, som Carbonio-platformen gav.
  • Valg af værktøjer og rammer: Baseret på kravene valgte vi Playwright på grund af dets kompatibilitet med forskellige browsere og robusthed i håndteringen af komplekse webinteraktioner. Jenkins blev valgt til CI/CD for at sikre jævn integration og kontinuerlig testning gennem hele udviklingslivscyklussen og for at interagere med udviklingspipelines.
  • Agil udviklingstilgang: I overensstemmelse med agile principper var vores udviklingsproces iterativ og fleksibel. Vi samarbejdede regelmæssigt med kunden gennem værktøjer som Jira til opgavestyring og Carbonio selv til møder og diskussioner, hvilket sikrede tilpasningsevne til skiftende krav.
  • Udvikling og udførelse af testsager: Vores testere udviklede et omfattende sæt testcases, der dækkede de vigtigste sti-scenarier. Disse tests blev udført på tværs af flere miljøer, hvilket gav en grundig dækning.
  • Kontinuerlig integration og udrulning: De automatiserede tests blev integreret i CI/CD-pipelinen, hvilket muliggjorde konsekvent og effektiv testning med ethvert build.
  • Rapportering og feedback-loop: Med et avanceret rapporteringssystem på plads gav vi detaljeret feedback på testudførelser, herunder skærmbilleder, videoer og logfiler til hurtig identifikation og løsning af problemer.
  • Løbende support og optimering: Efter implementeringen fortsatte vi med at yde support og optimeringstjenester, hvor vi forbedrede automatiseringsscripts i takt med, at Carbonio-platformen udviklede sig, og udvidede testdækningen.

 

Vores fokus var fortsat på at levere en løsning, der ikke kun var teknisk robust, men som også var i overensstemmelse med kundens langsigtede mål for deres digitale arbejdsplatform.

Hold

2

AQA Engineers

Resultater

630 automatiserede tests, der dækker kritiske funktioner, og 1890 autotests i timen på tværs af browsere

De automatiserede softwaretesttjenester til Zextras Carbonio-platform har ikke bare opfyldt, men overgået forventningerne, hvilket har givet forbedringer i produktkvalitet, driftseffektivitet og kundetilfredshed. Vores automatiseringsløsninger er i konstant udvikling og spiller en afgørende rolle for platformens fortsatte succes. Forbedrede resultater omfatter:

  • Kvalitetsforbedring: Automatisering førte til en betydelig forøgelse af testeffektiviteten med hurtig identifikation og løsning af regressionsproblemer, hvilket resulterede i mere stabile og kortere udgivelsescyklusser.
  • Forbedret ydeevne: Automatiserede softwaretesttjenester strømlinede forskellige platformsaspekter, reducerede tiden til at opdage og løse problemer og forbedrede håndteringen af indlæsning af dynamisk indhold.
  • Operationel effektivitet: Vores indsats reducerede i høj grad den tid og de ressourcer, der kræves til manuel testning, og bidrog til et mere effektivt workflow i kundens teams.
  • Hastighed og dækning: Vores system er i stand til at køre 1890 tests på tværs af flere browsere som Chrome, Firefox og Safari på bare 1 time. Automatiseringsrammen dækker vigtige platformsfunktioner og udvides løbende til at omfatte flere platformsdele og brugerscenarier.
  • Tidseffektivitet: Vores automatiseringsramme kører 630 tjek af brugerscenarier på kun 20 minutter, sammenlignet med 35 timer, der kræves til manuel test i et browsermiljø.
  • Indsigt og rapportering: Det omfattende rapporteringssystem med tydelig grafisk integration hjælper alle teammedlemmer, også ikke-teknisk personale, med hurtigt at vurdere testresultaterne.
  • Registrering og forebyggelse af fejl: Mere end 70 fejl er blevet opdaget og rapporteret gennem vores automatiserede softwaretestning, og det inkluderer ikke dubletter, der er fundet ved manuel testning i tidligere udviklingsfaser.
  • Smidighed i udgivelsescyklusser: Automatiseringen har været afgørende i tilfælde, hvor der var behov for hurtig kvalitetsvurdering af builds, især i de sidste dage af QA-sessioner før udgivelser. Det sikrer, at eventuelle problemer i sidste øjeblik bliver identificeret og løst med det samme.

 

Vores løbende arbejde fokuserer fortsat på at optimere og udvide mulighederne i vores automatiseringsløsninger, hvilket bidrager yderligere til platformens succes og pålidelighed.

Projektets varighed
  • Juli 2022 - Løbende

630

Automatiserede tests, der dækker kritiske funktioner

105

gange hurtigere testning

1890

autotester på 1 time på tværs af flere browsere

    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