Show Menu
ARGOMENTI×

Verifica delle app mobili

Adobe consiglia di utilizzare SPA Editor per i progetti che richiedono il rendering lato client basato sul framework dell'applicazione a pagina singola (ad es. React). Per saperne di più .
Data l'ampia gamma di dispositivi sul mercato e dispositivi in fase di rilascio, il test delle app è diventato estremamente importante. Si tratta di un'area in cui funzionalità e facilità d'uso possono generare recensioni ridotte su un app store, ma un singolo difetto può causare la disinstallazione dell'app. Occorre prestare attenzione ai piani di test e alla garanzia della qualità. Il collegamento seguente illustra molti degli argomenti che devono essere affrontati in generale, ad esempio, identificare l'ambiente, definire casi di test, tipi di test, ipotesi, coinvolgimento del cliente, ecc. Sono stati inoltre discussi gli strumenti per facilitare il lavoro di test. Strumenti interni, come Hobbes , possono essere utili per i test dell’interfaccia utente basati sul Web. Un giorno difficile può sollecitare le istanze con un carico simulato. Se l'ambiente di test dispone già di esperienza con strumenti di terze parti, come Selenium, anche questi possono essere utilizzati.
Quando si sviluppa un'app mobile, esistono molti nuovi problemi specifici per i dispositivi che devono essere affrontati insieme a quelli dei test tradizionali.
  • Funzionalità: Tutti i requisiti sono soddisfatti dall'app?
  • Usabilità: l'app è facile da usare e comprendere per il cliente?
  • Prestazioni - Cosa succede durante un picco di utilizzo? Gli elementi dell'app, come lo scorrimento e il cursore del mouse, sono rapidi e non distogliono l'esperienza?
  • Errore o Interruzioni: cosa accade in caso di chiamata o notifica in arrivo durante l'esecuzione dell'app? Cosa succede in caso di interruzione o spegnimento della rete?
  • Installazione e aggiornamenti - Com'è l'esperienza di installazione? In che modo gli aggiornamenti vengono rifiutati?
  • Tecnico - L'app sta consumando troppa energia da un dispositivo?
  • Localizzazione: tutte le aree dell'app sono tradotte?
  • Certificazione - L'app è stata certificata? I clienti possono essere certi che rispetta tutti i requisiti legali sulla privacy dei dati?
Queste domande devono essere risolte durante il test automatico e manuale.

Test automatizzato

È opportuno eseguire un certo grado di test automatizzato per coprire la varietà di dimensioni dello schermo, vincoli di memoria, metodi di input e sistemi operativi. Non solo copre gran parte dei casi di test, ma può accelerare il test di regressione quando vengono introdotte nuove funzioni o dispositivi. Idealmente, gli strumenti di automazione dovrebbero ridurre o limitare la duplicazione degli sforzi. Utilizzate strumenti o framework in modo che il vostro sforzo di test sia applicabile a tutte le piattaforme. Il grafico seguente mostra una struttura semplificata di un ambiente di test sia per i test dell'interfaccia utente basati sul Web che per i test delle app mobili. Il lato sinistro del grafico mostra una serie di nodi Selenium con i browser. SeleniumGrid consente di sottoporre a farm test dell’interfaccia utente comuni basati sul Web per uno qualsiasi di questi nodi. L'hub di Selenium può anche connettersi ad Appium per il test delle app su più piattaforme. Vengono visualizzati solo i simulatori, ma potete incorporare adb, per le utility Android e Xcode per i dispositivi iOS. I collegamenti sono disponibili più avanti in questo documento, dove è possibile trovare dettagli specifici per gli strumenti indicati.

Test manuale

Oltre al test automatizzato, l'app deve seguire un ciclo di test manuali. I clienti che eseguono l'app su un dispositivo reale non possono essere duplicati da uno script. Anche qui, avete molte opzioni. Potete utilizzare una piattaforma, come HockeyApp, per definire chi ha accesso e raccogliere i commenti. Oppure potete affidare l’intero processo a un servizio come UTest, ElusiveStars o Testin. Se disponete di un gruppo di tester interni, ma senza differenze tra i dispositivi, vi sono servizi cloud in cui potete eseguire test manuali sui loro pool di dispositivi. Uno di questi servizi che fornisce questo è SauceLabs. Potete anche creare app in remoto su PhoneGap Enterprise e installarle sui dispositivi locali come livello di test di accettazione o demo. Consulta il sito Web PhoneGap per informazioni sulle funzioni e la documentazione più recenti. Qualunque sia l'approccio, le prove manuali devono essere effettuate;
  • colpire un grande bersaglio di tester,
  • eseguire il test su un ampio pool di dispositivi (dispositivi ideali reali, ma simulatori/emulatori se non sono disponibili dispositivi reali),
  • fornire feedback informativi:
    • segnalazioni di arresto anomalo,
    • analytics/tracking,
    • usabilità,
    • aree di attenzione,
    • prestazioni,
    • consumo di dati/energia, ecc.

Strumenti

È disponibile un'ampia gamma di strumenti per testare le app mobili. La scelta di quelli da utilizzare dipende dalla vostra situazione specifica: caratteristiche, prezzo, supporto, copertura, ecc. Segue una breve descrizione di alcuni strumenti e servizi disponibili.
Selenio
  • Framework che include un'API per il test degli script per il feed WebDriver e il controllo di vari browser.
  • Potete utilizzarlo insieme ad Appium per eseguire test sui dispositivi reali.
  • SeleniumGrid indirizza i test su nodi per test paralleli.
  • L'IDE selenio aiuta a ridurre la scrittura di test case.
Per ulteriori informazioni, consultate https://www.seleniumhq.org/ .
Testdroid
  • Un servizio di test basato su cloud con ganci di integrazione continui e test dei dispositivi reali.
  • Include un App Crawler che verifica la compatibilità del dispositivo, analizza i registri, attraversa le viste, prende le schermate e monitora le prestazioni.
Per ulteriori informazioni, consultate https://testdroid.com/ .
Appio
  • Appium è un framework multipiattaforma popolare per l'automazione di test mobili.
  • Inoltre, un ispettore è dotato delle capacità di registrazione per aiutare i casi di test del codice.
Per ulteriori informazioni, consultate https://appium.io/ .
SauceLabs
  • SauceLabs fornisce test basati su cloud e si integra con l'integrazione continua.
  • I test vengono eseguiti automaticamente nel loro ambiente cloud oppure è possibile avviare un dispositivo o una piattaforma particolare ed eseguire test manuali per facilitare il debug dei problemi.
Per ulteriori informazioni, consultate https://saucelabs.com/ .
AppTestNow
  • Un servizio di outsourcing per il test delle app mobili.
  • Include un ampio pool di dispositivi e offre un'ampia gamma di tipi di test: prestazioni, qualità, funzionalità, certificazione, localizzazione, consumo di dati, ecc.
Per ulteriori informazioni, consultate https://www.apptestnow.com .
HockeyApp
  • HockeyApp rientra nel test manuale in cui l'app mobile viene spinta in un app store personale dove i tester possono scaricarla e provarla.
Per ulteriori informazioni, consultate https://hockeyapp.net/features/ .
Jenkins
  • Sebbene non sia uno strumento di test, Jenkins è un framework di integrazione continua che fornisce la spina dorsale per i test automatizzati. Numerosi plug-in di terze parti sono disponibili per estendere le funzionalità. Ad esempio, il plug-in SeleniumGrid fornisce un'interfaccia utente per gestire il nodo e i nodi Selenium.