Lasciate i vostri contatti, vi invieremo il nostro whitepaper via e-mail.
Acconsento al trattamento dei miei dati personali per l'invio di materiale di marketing personalizzato in conformità con la normativa vigente. Informativa sulla privacy. Confermando l'invio, l'utente accetta di ricevere materiale di marketing
Grazie!

Il modulo è stato inviato con successo.
Ulteriori informazioni sono contenute nella vostra casella di posta elettronica.

Innowise è una società internazionale di sviluppo software a ciclo completo fondata nel 2007. Siamo un team di oltre 1600+ professionisti IT che sviluppano software per altri professionisti in tutto il mondo.
Chi siamo
Innowise è una società internazionale di sviluppo software a ciclo completo fondata nel 2007. Siamo un team di oltre 1600+ professionisti IT che sviluppano software per altri professionisti in tutto il mondo.

Automazione QA di Digital workspace: test 105 volte più veloci

Innowise ha sviluppato un sistema di automazione QA per un fornitore internazionale di soluzioni per l'ambiente di lavoro digitale, ottimizzando il processo di test su più componenti, tra cui e-mail, calendario, chat e archiviazione di file. 

Cliente

Industria
Tecnologia dell'informazione
Regione
UE
Cliente da
2022
Il nostro cliente, Zextras, è un fornitore internazionale specializzato in soluzioni open-source per il digital workplace. Il suo prodotto di punta, Carbonio, è progettato per supportare i fornitori di servizi di telecomunicazione e Internet, con particolare attenzione alla sovranità digitale e alla proprietà dei dati per le organizzazioni.

Sfida

Gestione dei problemi di regressione e dei contenuti instabili in una soluzione complessa e multiforme per il posto di lavoro digitale.

Carbonio è una soluzione di collaborazione e comunicazione all-in-one che offre una serie di funzionalità integrate. Presentata sia come client web che come applicazione mobile, include il proprio server di posta elettronica, il calendario, la gestione dei contatti, una suite per l'ufficio per il lavoro collaborativo sui documenti, un drive virtuale, la messaggistica istantanea, le funzionalità di videoconferenza e il supporto per client di posta elettronica di terze parti come Outlook o Thunderbird. La piattaforma garantisce un'elevata disponibilità e una gestione efficiente dell'archiviazione dei dati.

Con il continuo sviluppo della piattaforma, la necessità di un framework di testing avanzato è diventata sempre più evidente. Carbonio, comprendendo una varietà di componenti, ciascuno con ambienti di sviluppo e versioni distinte, presentava notevoli sfide di testing.

Gli aggiornamenti minori portavano spesso a problemi di regressione, con ripercussioni non solo sui singoli moduli ma anche sulle operazioni integrate. Il team del cliente ha incontrato anche problemi di instabilità dei contenuti dinamici, che hanno complicato la risoluzione dei problemi.

Soluzione

Implementazione di servizi di test software automatizzati per semplificare i test dell'interfaccia utente, gestire i problemi di regressione e di caricamento dei contenuti.

Nell'ambito dei servizi di collaudo automatizzato del software, abbiamo sviluppato una soluzione QA automatizzata per risolvere le complessità della piattaforma Carbonio di Zextras. Questo sistema si è concentrato sulla semplificazione del processo di test dell'interfaccia utente tra i vari componenti, tra cui e-mail, calendario, chat e archiviazione dei file. Abbiamo integrato strumenti di automazione avanzati per gestire in modo efficiente i test di regressione e i problemi di caricamento dei contenuti dinamici. Il sistema è stato adattato per funzionare con diversi ambienti di sviluppo. Sfruttando la nostra esperienza nell'automazione QA, abbiamo consentito un coordinamento più efficace tra team diversi e migliorato significativamente l'efficienza dei test per la piattaforma multifunzionale Carbonio.

Architettura dell'automazione

Per soddisfare i requisiti specifici della piattaforma Zextras Carbonio, abbiamo progettato un'architettura di automazione avanzata che riproduce fedelmente le interazioni e i flussi di lavoro reali degli utenti. Questa architettura comprende una serie di componenti chiave:

  • Quadro drammaturgico: Abbiamo scelto Playwright per la sua capacità di emulare le azioni degli utenti su diversi browser e piattaforme. È in grado di gestire scenari complessi come il caricamento di file, il download e le interazioni con vari elementi web.
  • Integrazione CI/CD: Il nostro team ha integrato perfettamente la suite di automazione nelle pipeline di Continuous Integration e Continuous Deployment (CI/CD) esistenti. Questa integrazione consente l'esecuzione di test automatizzati nell'ambito dei processi di compilazione e distribuzione, garantendo l'identificazione di qualsiasi potenziale problema nelle prime fasi del ciclo di sviluppo.
  • Supporto dell'ambiente dinamico: Abbiamo progettato l'architettura in modo che sia indipendente dall'ambiente. I test possono essere eseguiti in ambienti diversi, semplicemente specificando l'URL del server. Questa flessibilità è fondamentale per testare i moduli di Carbonio in diverse configurazioni e setup.
  • Test basati su scenari: Abbiamo sviluppato una serie completa di script di test che coprono gli scenari più comuni per gli utenti. Questi scenari vanno da funzionalità di base come l'invio/ricezione di e-mail nel modulo e-mail a interazioni più complesse nei moduli di archiviazione dei file e di videoconferenza.
  • Approccio basato sui dati: Abbiamo utilizzato un approccio di test guidato dai dati per eseguire la stessa serie di test con diversi set di dati, fornendo una copertura completa di vari casi d'uso e casi limite.
  • Reporting e monitoraggio: Il framework di automazione include strumenti dettagliati di reporting e monitoraggio. Dopo ogni esecuzione di test, vengono generati rapporti che includono informazioni sull'esecuzione dei test, schermate di errori e registri. Questa reportistica dettagliata aiuta a identificare e risolvere rapidamente i problemi.

Copertura dello scenario del percorso critico

Nell'ambito dei servizi di test automatizzati del software per la piattaforma Carbonio, ci siamo concentrati sulla copertura completa degli scenari critici, fondamentali per le operazioni e le funzionalità quotidiane della piattaforma. Nel corso del primo anno, il nostro team dedicato, composto da due esperti di automazione, ha sviluppato e implementato con successo test automatizzati per oltre 650 di questi scenari vitali. Si trattava di funzionalità chiave per tutti i moduli della piattaforma, tra cui le transazioni e-mail, la pianificazione del calendario, le operazioni di archiviazione dei file e le interazioni di chat. 

Supporto del browser e ottimizzazione delle risorse

Nell'ambito dei nostri servizi di test automatizzati del software, l'obiettivo principale è stato quello di garantire il supporto completo dei browser, ottimizzando al contempo l'utilizzo delle risorse. Ci siamo concentrati sui browser più diffusi: Chrome, Safari, Firefox ed Edge. Per individuare in anticipo i problemi, la nostra automazione è stata eseguita sui driver del browser per Chromium, Webkit e Firefox.

Questo approccio ha ottimizzato le nostre risorse e accelerato il processo di test. Sfruttando il motore Chromium condiviso utilizzato sia da Chrome che da Edge, abbiamo potuto condurre i test principalmente su Chromium, riducendo al minimo la necessità di duplicare gli sforzi su due browser. 

Inoltre, la nostra capacità di individuare i problemi nei driver dei browser ha fornito un vantaggio: identificando e affrontando i problemi nei driver, abbiamo potuto risolverli prima che si manifestassero nelle versioni effettive dei browser, che in genere si aggiornano alle nuove versioni dei driver con un ritardo di 1-2 settimane. Questo atteggiamento proattivo nella risoluzione dei problemi ha garantito la stabilità della piattaforma su tutti i browser supportati.

Rilevamento proattivo dei problemi

Il nostro sistema di rilevamento dei problemi ha contribuito notevolmente all'integrità del processo di test della piattaforma Carbonio. Utilizzando i nostri strumenti di automazione, siamo stati in grado di rilevare tempestivamente i problemi con i driver dei browser. Questa lungimiranza è stata determinante per prevenire potenziali problemi che potrebbero insorgere nelle versioni successive del browser, consentendoci di applicare le correzioni prima che possano avere un impatto sull'esperienza dell'utente.

Sistema di reporting completo

Parallelamente, abbiamo implementato un sistema di reporting completo che ha migliorato significativamente la nostra capacità di diagnosticare e risolvere rapidamente i problemi. Ogni test automatizzato generava rapporti dettagliati, che includevano non solo informazioni testuali ma anche supporti visivi come schermate e video. Questi rapporti sono stati particolarmente utili negli scenari in cui era necessaria una conferma visiva dell'esito del test. Inoltre, i report contenevano i log di tutte le richieste dell'applicazione, fornendo ai nostri sviluppatori dati granulari per individuare le cause principali dei problemi di caricamento dei contenuti.

Tecnologie

AQA

Playwright, Fiddler, Jenkins, Allure, GitHub

Parte posteriore

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

Ingegneria di sistema

Prometheus, Grafana

Controllo della versione

GitHub

Processo

Il nostro processo per i servizi di testing automatizzato del software si è sviluppato attraverso una serie di fasi strutturate, ciascuna aumentata dalle nostre scelte tecniche e metodologie strategiche:

  • Analisi dei requisiti: Il nostro primo passo è stato quello di approfondire le esigenze del cliente e le sfide specifiche poste dalla piattaforma Carbonio.
  • Selezione dello strumento e del quadro di riferimento: In base ai requisiti, abbiamo scelto Playwright per la sua compatibilità con vari browser e la sua robustezza nel gestire interazioni web complesse. Per il CI/CD è stato scelto Jenkins, per garantire un'integrazione fluida e test continui durante il ciclo di vita dello sviluppo e per interagire con le pipeline di sviluppo.
  • Approccio di sviluppo agile: Aderendo ai principi Agile, il nostro processo di sviluppo è stato iterativo e flessibile. Abbiamo collaborato regolarmente con il cliente attraverso strumenti come Jira per la gestione delle attività e lo stesso Carbonio per le riunioni e le discussioni, garantendo l'adattabilità ai requisiti in evoluzione.
  • Sviluppo ed esecuzione di casi di test: I nostri tester hanno sviluppato una serie completa di casi di test che coprono gli scenari chiave del percorso. Questi test sono stati eseguiti in più ambienti, garantendo una copertura completa.
  • Integrazione e distribuzione continue: I test automatizzati sono stati integrati nella pipeline CI/CD, consentendo di eseguire test coerenti ed efficienti con qualsiasi build.
  • Reporting e ciclo di feedback: Grazie a un sistema di reporting avanzato, abbiamo fornito un feedback dettagliato sulle esecuzioni dei test, compresi screenshot, video e log per una rapida identificazione e risoluzione dei problemi.
  • Supporto e ottimizzazione continui: Dopo l'implementazione, abbiamo continuato a fornire servizi di supporto e ottimizzazione, perfezionando gli script di automazione con l'evoluzione della piattaforma Carbonio e ampliando la copertura dei test.

 

Il nostro obiettivo è rimasto quello di fornire una soluzione non solo tecnicamente solida, ma anche allineata con gli obiettivi a lungo termine del cliente per la sua piattaforma di lavoro digitale.

Team

2

Ingegneri AQA

Risultati

630 test automatizzati che coprono funzionalità critiche e 1890 autotest all'ora su tutti i browser

I servizi di testing automatizzato del software per la piattaforma Zextras Carbonio non solo hanno soddisfatto, ma hanno superato le aspettative, producendo miglioramenti nella qualità del prodotto, nell'efficienza operativa e nella soddisfazione dei clienti. In continua evoluzione, le nostre soluzioni di automazione giocano un ruolo cruciale nel continuo successo della piattaforma. I risultati migliori includono:

  • Miglioramento della qualità: L'automazione ha portato a un significativo aumento dell'efficienza dei test, con una rapida identificazione e risoluzione dei problemi di regressione, con conseguenti cicli di rilascio più stabili e più brevi.
  • Prestazioni migliorate: I servizi di test automatizzati del software hanno ottimizzato vari aspetti della piattaforma, riducendo i tempi di individuazione e risoluzione dei problemi e migliorando la gestione del caricamento dei contenuti dinamici.
  • Efficienza operativa: I nostri sforzi hanno ridotto notevolmente il tempo e le risorse necessarie per i test manuali, contribuendo a un flusso di lavoro più efficiente all'interno dei team del cliente.
  • Velocità e copertura: Il nostro sistema è in grado di eseguire 1890 test su più browser come Chrome, Firefox e Safari in appena un'ora. Il framework di automazione copre le funzionalità cruciali della piattaforma ed è in continua espansione per includere altre parti della piattaforma e scenari utente.
  • Efficienza temporale: Il nostro framework di automazione esegue 630 verifiche di scenari utente in soli 20 minuti, rispetto alle 35 ore necessarie per i test manuali in un ambiente browser.
  • Approfondimenti e rapporti: Il sistema di reporting completo con una chiara integrazione grafica aiuta tutti i membri del team, compreso il personale non tecnico, a valutare rapidamente i risultati dei test.
  • Rilevamento e prevenzione degli errori: Grazie ai nostri servizi di test automatizzati del software sono stati individuati e segnalati più di 70 bug, senza contare i duplicati trovati durante i test manuali nelle fasi precedenti dello sviluppo.
  • Agilità nei cicli di rilascio: L'automazione è stata fondamentale nei casi in cui era necessaria una rapida valutazione della qualità delle build, in particolare negli ultimi giorni delle sessioni di QA prima del rilascio. Garantisce che qualsiasi problema dell'ultimo minuto venga identificato e risolto tempestivamente.

 

Il nostro lavoro continua a concentrarsi sull'ottimizzazione e sull'espansione delle capacità delle nostre soluzioni di automazione, contribuendo ulteriormente al successo e all'affidabilità della piattaforma.

Durata del progetto
  • Luglio 2022 - In corso

630

test automatizzati che coprono le funzionalità critiche

105

test più veloci

1890

autotest in 1 ora su più browser

Contattateci!

Prenota una chiamata oppure compilate il modulo sottostante e sarete ricontattati una volta elaborata la vostra richiesta.

    Si prega di includere i dettagli del progetto, la durata, lo stack tecnologico, i professionisti IT necessari e altre informazioni pertinenti
    Registra un messaggio vocale sul tuo
    progetto per aiutarci a capirlo meglio
    Allega ulteriori documenti se necessario
    Caricare il file

    È possibile allegare fino a 1 file di 2 MB complessivi. File validi: pdf, jpg, jpeg, png

    Vi informiamo che cliccando sul pulsante Invia, Innowise tratterà i vostri dati personali in conformità con la nostra Informativa sulla privacy allo scopo di fornirvi informazioni adeguate.

    Cosa succede dopo?

    1

    Dopo aver ricevuto ed elaborato la vostra richiesta, vi ricontatteremo a breve per illustrare le esigenze del progetto e firmare un NDA per garantire la riservatezza delle informazioni.

    2

    Dopo aver esaminato i requisiti, i nostri analisti e sviluppatori elaborano una proposta di progetto con l'ambito di lavoro, le dimensioni del team, i tempi e i costi stimati.

    3

    Organizziamo un incontro con voi per discutere l'offerta e giungere a un accordo.

    4

    Firmiamo un contratto e iniziamo a lavorare sul vostro progetto il prima possibile.

    Grazie!

    Il tuo messaggio è stato inviato.
    Elaboreremo la vostra richiesta e vi ricontatteremo al più presto.

    Grazie!

    Il tuo messaggio è stato inviato.
    Elaboreremo la vostra richiesta e vi ricontatteremo al più presto.

    freccia