Digitaalisen työtilan QA-automaatio: 105 kertaa nopeampi testaus

Innowise kehitti kansainväliselle digitaalisten työpaikkaratkaisujen tarjoajalle QA-automaatiojärjestelmän, joka virtaviivaistaa testausprosessia useiden komponenttien, kuten sähköpostin, kalenterin, keskustelujen ja tiedostojen tallennuksen osalta. 

Asiakas

Teollisuus
Tietotekniikka
Alue
EU
Asiakas vuodesta
2022
Asiakkaamme Zextras on kansainvälinen toimittaja, joka on erikoistunut avoimen lähdekoodin digitaalisiin työpaikkaratkaisuihin. Heidän lippulaivatuotteensa, Carbonio, on suunniteltu tukemaan televiestintä- ja internetpalvelujen tarjoajia, ja siinä keskitytään organisaatioiden digitaaliseen suvereniteettiin ja tietojen omistajuuteen.

Haaste

Regressio-ongelmien ja epävakaan sisällön hallinta monimutkaisessa ja monitahoisessa digitaalisessa työpaikkaratkaisussa.

Carbonio on monipuolinen yhteistyö- ja viestintäratkaisu, joka tarjoaa useita integroituja ominaisuuksia. Se on sekä verkko-asiakasohjelma että mobiilisovellus, ja se sisältää oman sähköpostipalvelimen, kalenterin, yhteystietojen hallinnan, toimistopaketin asiakirjojen yhteistoiminnalliseen käsittelyyn, virtuaalisen aseman, pikaviestinnän, videoneuvotteluominaisuudet ja tuen kolmansien osapuolten sähköpostiohjelmille, kuten Outlookille tai Thunderbirdille. Alusta takaa korkean käytettävyyden ja tehokkaan tietojen tallennuksen hallinnan.

Alustan kehittyessä tarve kehittyneelle testauskehykselle kävi yhä ilmeisemmäksi. Carbonio, joka käsittää useita komponentteja, joista jokaisella on omat kehitysympäristönsä ja versionsa, asetti huomattavia haasteita testaukselle.

Pienet päivitykset johtivat usein regressio-ongelmiin, jotka vaikuttivat paitsi yksittäisiin moduuleihin myös niiden integroituihin toimintoihin. Asiakkaan tiimi kohtasi haasteita myös epävakaan dynaamisen sisällön kanssa, mikä vaikeutti ongelmanratkaisua.

Ratkaisu

Toteutettiin automatisoituja ohjelmistotestauspalveluja käyttöliittymätestauksen tehostamiseksi sekä regressio- ja sisällönlatausongelmien hallitsemiseksi.

Automaattisten ohjelmistotestauspalvelujen puitteissa kehitimme automatisoitu QA-ratkaisu käsittelemään Zextrasin Carbonio-alustan monimutkaisuutta. Järjestelmässä keskityttiin virtaviivaistamaan käyttöliittymän testausprosessia eri komponenttien, kuten sähköpostin, kalenterin, chatin ja tiedostojen tallennuksen, osalta. Integroimme kehittyneitä automatisointityökaluja regressiotestauksen ja dynaamisen sisällön lataamiseen liittyvien ongelmien tehokkaaseen hallintaan. Järjestelmä räätälöitiin toimimaan eri kehitysympäristöissä. Hyödyntämällä QA-automaation asiantuntemustamme mahdollistimme tehokkaamman koordinoinnin erilaisten tiimien välillä ja paransimme merkittävästi monikäyttöisen Carbonio-alustan testauksen tehokkuutta.

Automaatioarkkitehtuuri

Zextras Carbonio -alustan erityisvaatimusten täyttämiseksi suunnittelimme kehittyneen automaatioarkkitehtuurin, joka jäljittelee tarkasti todellisia käyttäjien vuorovaikutusta ja työnkulkuja. Tähän arkkitehtuuriin kuuluu useita keskeisiä komponentteja:

  • Näytelmäkirjailijan puitteet: Valitsimme Playwrightin, koska se pystyy jäljittelemään käyttäjän toimia eri selaimilla ja alustoilla. Se pystyy käsittelemään monimutkaisia skenaarioita, kuten tiedostojen latauksia, latauksia ja vuorovaikutusta eri verkkoelementtien kanssa.
  • CI/CD-integraatio: Tiimimme integroi automaatiopaketin saumattomasti nykyisiin CI/CD-putkiin (Continuous Integration and Continuous Deployment). Tämä integrointi mahdollistaa automatisoidun testauksen suorittamisen osana rakennus- ja käyttöönottoprosesseja, mikä varmistaa, että mahdolliset ongelmat tunnistetaan varhaisessa vaiheessa kehityssykliä.
  • Dynaamisen ympäristön tuki: Suunnittelimme arkkitehtuurin ympäristöstä riippumattomaksi. Testit voidaan suorittaa eri ympäristöissä yksinkertaisesti määrittämällä palvelimen URL-osoite. Tämä joustavuus on ratkaisevan tärkeää, kun Carbonion moduuleja testataan erilaisissa kokoonpanoissa ja asetuksissa.
  • Skenaariopohjainen testaus: Kehitimme kattavan joukon testiskriptejä, jotka kattavat tavanomaiset käyttäjäskenaariot. Skenaariot vaihtelevat perustoiminnallisuuksista, kuten sähköpostin lähettämisestä/vastaanottamisesta sähköpostimoduulissa, monimutkaisempiin vuorovaikutustoimintoihin tiedostojen tallennus- ja videoneuvottelumoduuleissa.
  • Tietoon perustuva lähestymistapa: Käytimme datapohjaista testausmenetelmää, jolla ajoimme saman testisarjan eri tietokokonaisuuksilla, jolloin eri käyttötapaukset ja ääritapaukset katettiin perusteellisesti.
  • Raportointi ja seuranta: Automaatiokehys sisältää yksityiskohtaiset raportointi- ja seurantatyökalut. Jokaisen testiajon jälkeen se luo raportteja, jotka sisältävät tietoja testin suorittamisesta, kuvakaappauksia epäonnistumisista ja lokitietoja. Tämä yksityiskohtainen raportointi auttaa ongelmien nopeassa tunnistamisessa ja ratkaisemisessa.

Kriittisen polun skenaarioiden kattavuus

Osana Carbonio-alustan automatisoituja ohjelmistotestauspalveluja keskityimme kattamaan perusteellisesti kriittiset polkukohtaiset skenaariot, jotka ovat ratkaisevia alustan päivittäisten toimintojen ja toimivuuden kannalta. Ensimmäisen vuoden aikana omistautunut tiimimme, joka koostui kahdesta kokeneesta automaatioasiantuntijasta, kehitti ja toteutti onnistuneesti automatisoidut testit yli 650:lle näistä elintärkeistä skenaarioista. Ne kattoivat keskeisiä toimintoja alustan moduuleissa, kuten sähköpostitapahtumat, kalenterin aikataulutus, tiedostojen tallennustoiminnot ja chat-vuorovaikutukset. 

Selaintuki ja resurssien optimointi

Automaattisissa ohjelmistotestauspalveluissamme pääpaino oli kattavan selaintuen varmistamisessa ja resurssien käytön optimoinnissa. Kohteemme olivat suosituimmat selaimet - Chrome, Safari, Firefox ja Edge. Ongelmien ennaltaehkäisevää havaitsemista varten automatisointimme suoritettiin Chromiumin, Webkitin ja Firefoxin selainajureilla.

Tämä lähestymistapa tehosti resurssejamme ja nopeutti testausprosessia. Hyödyntämällä Chromen ja Edgen yhteistä Chromium-moottoria pystyimme suorittamaan testit ensisijaisesti Chromiumissa, jolloin päällekkäisiä toimia ei tarvinnut tehdä kahdella selaimella. 

Lisäksi kykymme havaita ongelmat selainajureissa tarjosi etua: tunnistamalla ja käsittelemällä ongelmat ajureissa pystyimme ratkaisemaan ne ennen kuin ne ilmenivät varsinaisissa selainversioissa, jotka yleensä päivittyvät uusiin ajuriversioihin 1-2 viikon viiveellä. Tämä ennakoiva asenne ongelmanratkaisuun varmisti, että alusta pysyi vakaana kaikissa tuetuissa selaimissa.

Ennakoiva ongelmien havaitseminen

Ongelmien havaitsemisjärjestelmämme vaikutti suuresti Carbonio-alustan testausprosessin eheyteen. Automaatiotyökalujemme avulla pystyimme havaitsemaan selainajureihin liittyvät ongelmat jo varhaisessa vaiheessa. Tämä ennakointi auttoi ennakoimaan mahdollisia ongelmia, joita voi esiintyä myöhemmissä selainversioissa, jolloin pystyimme soveltamaan korjauksia ennen kuin ne ehtivät vaikuttaa käyttäjäkokemukseen.

Kattava raportointijärjestelmä

Samanaikaisesti otimme käyttöön kattavan raportointijärjestelmän, joka paransi merkittävästi kykyämme diagnosoida ja käsitellä ongelmia nopeasti. Jokainen automatisoitu testi tuotti yksityiskohtaisia raportteja, jotka sisälsivät tekstimuotoisen tiedon lisäksi myös visuaalisia apuvälineitä, kuten kuvakaappauksia ja videoita. Nämä raportit olivat erityisen hyödyllisiä tilanteissa, joissa testin tuloksen visuaalinen vahvistus oli tarpeen. Lisäksi raportit sisälsivät lokitiedot kaikista sovelluspyynnöistä, mikä antoi kehittäjillemme yksityiskohtaista tietoa sisällön latausongelmien perimmäisten syiden paikantamiseksi.

Teknologiat

Näytelmäkirjailija, Viulunsoittaja, Jenkins, Allure, GitHub

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

Järjestelmätekniikka

Prometheus, Grafana

Versionhallinta

GitHub

Prosessi

Automaattisten ohjelmistotestauspalveluiden prosessi eteni useiden jäsenneltyjen vaiheiden kautta, joista jokaista täydensivät tekniset valintamme ja strategiset menetelmämme:

  • Vaatimusten analysointi: Aluksi perehdyimme syvällisesti asiakkaan tarpeisiin ja Carbonio-alustan asettamiin erityishaasteisiin.
  • Työkalujen ja puitteiden valinta: Vaatimusten perusteella valitsimme Playwrightin, koska se on yhteensopiva eri selainten kanssa ja pystyy käsittelemään monimutkaisia verkkovuorovaikutuksia. Jenkins valittiin CI/CD:tä varten, jotta voidaan varmistaa sujuva integrointi ja jatkuva testaus koko kehityksen elinkaaren ajan ja olla vuorovaikutuksessa kehitysputkien kanssa.
  • Ketterä kehityslähestymistapa: Ketterien periaatteiden mukaisesti kehitysprosessimme oli iteratiivinen ja joustava. Teimme säännöllistä yhteistyötä asiakkaan kanssa Jiran kaltaisten työkalujen avulla tehtävien hallintaa varten ja Carbonion itse kokouksia ja keskusteluja varten, mikä varmisti mukautuvuuden muuttuviin vaatimuksiin.
  • Testitapausten kehittäminen ja toteutus: Testaajamme kehittivät kattavan joukon testitapauksia, jotka kattavat tärkeimmät polkukohtaukset. Nämä testit suoritettiin useissa ympäristöissä, jolloin saatiin aikaan perusteellinen kattavuus.
  • Jatkuva integrointi ja käyttöönotto: Automaattiset testit integroitiin CI/CD-putkeen, mikä mahdollistaa johdonmukaisen ja tehokkaan testauksen minkä tahansa buildin yhteydessä.
  • Raportointi ja palautekehä: Kehittyneen raportointijärjestelmän avulla annoimme yksityiskohtaista palautetta testien suorittamisesta, mukaan lukien kuvakaappaukset, videot ja lokit, jotta ongelmat voitiin tunnistaa ja ratkaista nopeasti.
  • Jatkuva tuki ja optimointi: Toteutuksen jälkeen jatkoimme tuki- ja optimointipalveluiden tarjoamista, automatisointiskriptien hiomista Carbonio-alustan kehittyessä ja testien kattavuuden laajentamista.

 

Keskityimme toimittamaan ratkaisun, joka ei ollut ainoastaan teknisesti vankka vaan myös linjassa asiakkaan digitaalisen työympäristön pitkän aikavälin tavoitteiden kanssa.

Joukkue

2

AQA Engineers

Tulokset

630 automaattista testiä, jotka kattavat kriittiset toiminnot, ja 1890 automaattitestiä tunnissa kaikilla selaimilla.

Zextras Carbonio -alustan automatisoidut ohjelmistotestauspalvelut eivät ole ainoastaan täyttäneet vaan ylittäneet odotukset, mikä on parantanut tuotteiden laatua, toiminnan tehokkuutta ja asiakastyytyväisyyttä. Jatkuvasti kehittyvillä automaatioratkaisuillamme on ratkaiseva rooli alustan jatkuvassa menestyksessä. Parannettuja tuloksia ovat mm:

  • Laadun parantaminen: Automaatio johti testauksen tehokkuuden merkittävään kasvuun, ja regressio-ongelmat tunnistettiin ja ratkaistiin nopeasti, mikä johti vakaampiin ja lyhyempiin julkaisusykleihin.
  • Parannettu suorituskyky: Automaattiset ohjelmistotestauspalvelut virtaviivaistivat eri alustan näkökohtia, lyhensivät ongelmien havaitsemiseen ja ratkaisemiseen kuluvaa aikaa ja paransivat dynaamisen sisällön lataamisen käsittelyä.
  • Toiminnan tehokkuus: Toimintamme vähensi huomattavasti manuaaliseen testaukseen tarvittavaa aikaa ja resursseja, mikä tehosti asiakkaan tiimien työnkulkua.
  • Nopeus ja kattavuus: Järjestelmämme pystyy suorittamaan 1890 testiä useilla selaimilla, kuten Chromella, Firefoxilla ja Safarilla, vain yhdessä tunnissa. Automaatiokehys kattaa keskeiset alustan toiminnot, ja sitä laajennetaan jatkuvasti lisäämällä alustan osia ja käyttäjäskenaarioita.
  • Ajallinen tehokkuus: Automaatiokehyksemme suorittaa 630 käyttäjäskenaarion tarkistuksen vain 20 minuutissa, kun taas manuaaliseen testaukseen yhdessä selainympäristössä kuluu 35 tuntia.
  • Oivallukset ja raportointi: Kattava raportointijärjestelmä, jossa on selkeä graafinen integraatio, auttaa kaikkia tiimin jäseniä, myös muuta kuin teknistä henkilöstöä, arvioimaan nopeasti testituloksia.
  • Vikojen havaitseminen ja ehkäiseminen: Automaattisten ohjelmistotestauspalvelujemme avulla on havaittu ja raportoitu yli 70 virhettä, lukuun ottamatta manuaalisessa testauksessa aiemmissa kehitysvaiheissa havaittuja kaksoiskappaleita.
  • Julkaisusyklien ketteryys: Automaatio on ollut ratkaisevan tärkeää tapauksissa, joissa on tarvittu nopeaa laadunarviointia, erityisesti viimeisinä päivinä ennen julkaisuja. Se varmistaa, että kaikki viime hetken ongelmat tunnistetaan ja ratkaistaan nopeasti.

 

Jatkuva työmme keskittyy edelleen automaatioratkaisujemme ominaisuuksien optimointiin ja laajentamiseen, mikä edistää edelleen alustan menestystä ja luotettavuutta.

Hankkeen kesto
  • Heinäkuu 2022 - Jatkuva

630

kriittiset toiminnot kattavat automaattiset testit

105

kertaa nopeampi testaus

1890

Autotestit 1 tunnissa useilla selaimilla

    Ota yhteyttä

    Varaa puhelu tai täytä alla oleva lomake, niin otamme sinuun yhteyttä, kun olemme käsitelleet pyyntösi.

    Lähetä meille ääniviesti
    Liitä asiakirjoja
    Lataa tiedosto

    Voit liittää 1 enintään 2 Mt:n tiedoston. Hyväksytyt tiedostomuodot: pdf, jpg, jpeg, png.

    Klikkaamalla Lähetä, annat suostumuksesi siihen, että Innowise käsittelee henkilötietojasi meidän Tietosuojakäytäntö antaa sinulle asiaankuuluvia tietoja. Antamalla puhelinnumerosi suostut siihen, että voimme ottaa sinuun yhteyttä puheluiden, tekstiviestien ja viestisovellusten kautta. Puhelu-, viesti- ja datahintoja voidaan soveltaa.

    Voit myös lähettää meille pyyntösi
    osoitteeseen contact@innowise.com

    Mitä tapahtuu seuraavaksi?

    1

    Kun olemme vastaanottaneet ja käsitelleet pyyntösi, otamme sinuun yhteyttä ja kerromme yksityiskohtaisesti projektin tarpeet ja allekirjoitamme NDA-sopimuksen luottamuksellisuuden varmistamiseksi.

    2

    Tutkittuaan toiveesi, tarpeesi ja odotuksesi tiimimme suunnittelee projektin ehdotuksen, jossa esitetään työn laajuus, tiimin koko, aika- ja kustannusarviot.

    3

    Järjestämme kanssasi tapaamisen, jossa keskustellaan tarjouksesta ja sovitaan yksityiskohdista.

    4

    Lopuksi allekirjoitamme sopimuksen ja aloitamme projektisi toteuttamisen heti.

    nuoli