Automation Testing: Requisiti minimi per per permettere a qualunque framework di funzionare

Ciro Tartaglia
weBeetle
Published in
3 min readFeb 2, 2024

L’automazione dei test è un componente fondamentale del processo di controllo di qualità del software. Diversi framework di testing automatico, come Cypress, Selenium, e molti altri, richiedono una preparazione accurata dell’interfaccia utente - e non solo - per garantire test stabili ed efficienti. In questo articolo, analizzeremo i diversi fattori che contribuiscono al successo dei test automatici, senza dover concentrare troppo effort in attività che dovrebbero essere relativamente semplici.

Photo by Alvaro Reyes on Unsplash

Usare attributi univoci

Bisogna assegnare attributi univoci agli elementi HTML che si desidera testare. Gli attributi possono essere “data-test,” “id,” o qualsiasi altra convenzione preferita, l’importante è farlo. Questa pratica rende gli elementi facilmente identificabili nei test e soprattutto limita la possibilità di dover riscrivere il proprio test poiché magari scritto basandosi sulle classi degli elementi presenti in interfaccia (elemento estremamente variabile e sensibile). Di seguito un esempio di quello che può far felice un automation Tester :

<button data-test="submit-button">Invia</button>
gif by gihpy.com

Utilizzare semantic HTML

La struttura del codice HTML dovrebbe essere semanticamente corretta. Utilizzare gli elementi HTML appropriati per i contenuti, come “form,” “input,” “button,” ecc. semplifica la navigazione e l’identificazione degli elementi nei test, aiuta chi si occupa della scrittura del test ad orientarsi ed acquisire più confidenza nella navigazione e nella scrittura rendendo meno macchinoso il suo lavoro.

Quindi sì, anche questo ci rende molto felici.

Photo by Jackson Sophat on Unsplash

Evitare lo stile inline

Bisogna evitare stili inline direttamente negli elementi HTML, meglio utilizzare CSS per gestire la presentazione dell’interfaccia. Questo separa la logica dalla presentazione e rende i test più stabili e facili da scrivere. Di seguito un esempio (molto semplicistico) di ciò che bisognerebbe evitare :

<p style="color: blue; font-size: 16px;">Questo è un paragrafo con stile inline.</p>

Includere attributi di test

Sarebbe un’ottima cosa aggiungere attributi specifici per il testing (ad esempio, “data-testid”) agli elementi HTML che devono essere identificati nei test. Questo consente di isolare facilmente gli elementi di interesse durante l’automazione e ancora una volta ci aiuta a risparmiare tempo e risorse preziose. Esempio basilare? ecco a te :

<input data-testid="email-input" type="text" />

Utilizzare attributi ARIA per l’accessibilità

Implementare gli attributi ARIA per migliorare l’accessibilità degli elementi della pagina. Questi attributi possono anche aiutare a identificare e interagire con elementi complessi, come modali o elementi interattivi.

<button aria-label="Avvia la ricerca">Cerca</button>
Photo by Pablo Arroyo on Unsplash

Concludendo…

Generalmente si pensa che basti padroneggiare una tecnologia per essere in grado di gestire ogni tipo di situazione e software, ma non è proprio così. Usare un framework di testing automatizzato implica avere un ambiente congruo e sviluppato appositamente per i test. Tutti i piccoli punti che ho scritto in questo articolo sono un’ottima base di partenza se si è interessati ad automatizzare le procedure di test di un software, dei requisiti minimi ed essenziali senza i quali diventa davvero difficile o impossibile creare delle procedure affidabili e da poter utilizzare quando si vuole senza dover manutenere il codice troppo spesso.

Spero di essere stato chiaro ed utile.

Al prossimo articolo!

--

--

Ciro Tartaglia
weBeetle
Writer for

QA Software Automation Tester | 25 years old |Passionate Gamer | weBeetle employee