Apr 30, 2020 – 11 min read
State cercando di decidere come testare la vostra app mobile? Forse ti sei perso tra le decine di strumenti di test per app mobili e non sai quale scegliere? Se è così, allora questo articolo con una lista completa dei migliori strumenti di test sia per Android che per iOS è per te.
Come il numero di utenti di smartphone cresce ogni giorno, così fa il numero di sviluppatori. E dove ci sono molti sviluppatori e applicazioni, ci devono essere molti ingegneri QA, poiché la qualità di un’app è la chiave del suo successo.
QA e sviluppatori sono alla costante ricerca dei migliori strumenti di test per app mobili, e sceglierne uno o più è diventato un grosso problema.
Ecco alcune altre difficoltà legate al test delle app mobili secondo i dirigenti senior dell’IT management.
Fonte: Statista
Come potete vedere, la stragrande maggioranza delle aziende di sviluppo ha eseguito test mobili nel 2016, e il loro numero è in crescita. Tuttavia, il problema di trovare gli strumenti giusti per il test delle applicazioni mobili è diventato un serio ostacolo per gli sviluppatori e gli AQ.
In questo articolo abbiamo fatto una lista dei migliori strumenti di test delle applicazioni mobili sul mercato. Qui sarete in grado di scoprire quali sono i più popolari tra gli sviluppatori e gli ingegneri QA, quindi iniziamo e parliamo dei loro pro e contro.
Strumenti universali di test automatizzati:
Sono strumenti di test universali per applicazioni mobili su Android, iOS e altre piattaforme come Windows e Blackberry.
#1 Ranorex
Ranorex è uno strumento automatico a pagamento facile da usare per sviluppare e gestire progetti con team di sviluppatori e specialisti QA.
Pros:
Facile da installare per i non sviluppatori
Clicca & Vai XPath editor
UI object map editor
Supporto ID dinamico
Facile da mantenere
Facile da aprire file .exe
Servizio di supporto professionale
Cons:
Nessun supporto Mac
Nessun supporto ibrido Android o applicazioni web
Nessuna esportazione di script in diversi linguaggi come Java o VBScript
Nessun supporto drag-and-drop o supporto per i gesti
Nessun lancio automatico dell’applicazione in caso di crash
Lungo tempo di attesa per l’identificazione dell’oggetto
#2 Eggplant
Eggplant è uno dei più avanzati strumenti di test delle prestazioni delle applicazioni mobili. Comprende un’ampia scelta di strumenti per qualsiasi tipo di test, dal funzionale al carico. Gli strumenti di Eggplant possono funzionare da soli o lavorare con strumenti esterni in un ambiente comune.
Pros:
Facile integrazione del sistema operativo
Gestione dei test case
Modalità di registrazione controllata
I test case possono essere eseguiti dalla riga di comando senza supervisione
Supporta tutte le piattaforme standard: Android, iOS, BlackBerry, Windows Phone e Symbian
Interagisce con i sistemi come fa un utente
Non ha bisogno di plugin
Cons:
Nessuna identificazione nativa degli oggetti
Le immagini registrate in un SO non possono essere usate in un altro
Non è ancora molto popolare, quindi è difficile trovare uno specialista che abbia esperienza di lavoro con esso
#3 SOASTA Touchtests
SOASTA TouchTest fornisce test funzionali completamente automatizzati di applicazioni mobili per smartphone con sensori.
Pros:
Progetta, esegue, modifica e analizza rapidamente i casi di test
Testa il multitouch in iOS e Android native, ibride e web-app
Supporta Gradle che carica i file jar necessari e non ha bisogno di una fase di caricamento separata
Test senza soluzione di continuità delle prestazioni delle app mobili
Si adatta meglio all’automazione di casi critici che saranno usati costantemente
Cons:
Errori nella precisione della scala
Errori nella precisione della sincronizzazione
Nessuna possibilità di controllare l’hardware
Nessuna simulazione di chiamate in entrata
#4 Appium
Appium è probabilmente uno degli strumenti più famosi per il test delle app mobili.
Pros:
Non hai bisogno di modificare la tua app
L’automazione dei test API è facile
Piattaforma open source gratuita
Il framework traduce i comandi di Selenium Webdriver in UIAutomation (iOS) o UIAutomator (Android) a seconda del dispositivo ma non del SO, quindi non c’è dipendenza dal sistema operativo di un dispositivo mobile
Supporta Java, Python, JavaScript, PHP, C# e Ruby
Funziona su dispositivi, emulatori e simulatori
Supporta tutte le piattaforme standard tra cui iOS, Android, Windows e anche Firefox OS
Cons:
Supporta direttamente le versioni 17 e superiori di Android; le versioni precedenti non sono supportate
Nessun supporto diretto per gli avvisi Android
Più di 50 bug sconosciuti in iOS
#5 Calabash
Calabash è un framework sviluppato da Xamarin per l’accettazione automatica . Permette di automatizzare i test UI scritti in Cucumber.
Pro:
È possibile eseguire casi di test su più di 1000 dispositivi in Xamarin Test Cloud
Documentazione chiara
Supporto per Cucumber
Esecuzione parallela dei casi
Supporto per gesti e scorrimento
Cons:
I casi di test sono scritti solo in Ruby
Preparazione speciale richiesta per i test iOS
Nessuna funzione di registrazione o riproduzione
Nessuna generazione di codice possibile
Strumenti di test per applicazioni Android
Questi strumenti di test per applicazioni mobili funzionano solo per applicazioni Android. Ci sono tonnellate di strumenti utilizzati per i test mobili specifici per le applicazioni Android, ma abbiamo selezionato i migliori:
Leggi anche: Come costruire test efficaci per la tua app Android >
#6 Robotium
Robotium è uno dei principali framework per i test automatici delle applicazioni Android. Può essere una parte utile di qualsiasi tecnica.
Pros:
Possibilità di creare scenari per funzionalità e test di sistema di azioni multiple
Adatto per le app con codice sorgente disponibile o un file APK
Esecuzione rapida dei casi
Integrazione con Maven e Ant
Sincronizzazione automatizzata
Cons:
Solo un test può essere eseguito alla volta
Non funziona con componenti Flash o web
#7 Selendroid
Selendroid è uno degli strumenti più potenti per diversi tipi di applicazioni Android.
Pros:
Supporta la piena integrazione con gli attuali framework Selenium grazie all’interfaccia API client
Può essere utilizzato su dispositivi reali, emulatori, o simulatori
Lancio automatizzato di emulatori esistenti
Strumento speciale chiamato Inspector per controllare l’interfaccia utente della tua app
Non è necessario modificare un’app per l’automazione
Supporta vecchie versioni di Android
Possibilità di collegare e scollegare scollegare i dispositivi hardware senza fermare il processo
Integrazione completa con Selenium Grid per lo scaling e i test paralleli
Registrazione dei clic
Compatibilità completa con JSON Wire Protocol/Selenium 3 Ready
Cons:
Nessuna capacità di automatizzare azioni al di fuori dell’applicazione come la fotocamera o le mappe
Quasi lento
#8 Kobiton
Kobiton è uno strumento che fornisce agli utenti il pieno controllo di dispositivi mobili reali durante i test manuali con supporto per gesti multigesti tattili, orientamento, simulazioni GPS, gestione delle connessioni del dispositivo, controllo della fotocamera e dell’altoparlante.
Pro:
Storia dei test centralizzata e registri dei dati per una maggiore collaborazione
Gestione del laboratorio dei dispositivi interni che utilizza più efficacemente i dispositivi interni
Supporto per Appium 1.6.4
Esperienza utente semplificata per snellire le sessioni di test
Risparmia tempoFacile da provare con la prova gratuita – nessuna carta di credito richiesta
Cons:
Non supporta l’esecuzione di test in ritardo.
#9 UI Automator
UI Automator è un framework open source per UI con classi di test funzionali.
Pro:
Capace di eseguire applicazioni su diversi dispositivi
Ha un file con un’API che include interfacce di classe ed eccezioni
Cons:
È necessaria la conoscenza di JavaScript
Strumenti di test per applicazioni iOS
Ecco alcuni strumenti di test per applicazioni iOS che sono ottimi per iPhone, iPad e altri dispositivi Apple.
#10 KeepItFunctional (KIF)
KIF è un framework per i test di integrazione delle applicazioni iOS. Inoltre, è uno dei migliori strumenti di automazione mobile. Permette di testare integrazioni di casi su Objective-C in simulatori di iPhone e iPad.
Pro:
Automazione che imita il comportamento dell’utente
Supporta diverse versioni di iOS
Si integra automaticamente con gli strumenti Xcode
Facile da imparare e applicare le impostazioni
Può scrivere test nella stessa lingua in cui è scritta l’applicazione (Objective-C/Swift)
Cons:
Usa API che non sono menzionate nella documentazione; se gli script dei test non fanno parte del codice di produzione, Apple rifiuterà un’app
I test sono scritti in Objective-C, che potrebbe non essere familiare al tuo team QA
#11 iOS Driver
iOS Driver è uno strumento open source capace di integrarsi completamente con la griglia Selenium.
Pro:
Automatizza il test di app native e ibride con Selenium o WebDriver API
Non c’è bisogno di caricare un’app aggiuntiva o modificare il codice dell’app
Efficiente negli emulatori
Cons:
Esegue più lentamente sui dispositivi, che nell’emulatore
Alcune versioni non girano affatto sui dispositivi
#12 TestFlight
TestFlight è uno strumento per sviluppatori iOS che ti permette di invitare utenti a testare la tua applicazione.
Pro:
Consente di invitare fino a 1000 utenti e ingegneri QA via e-mail
Condivisione delle build con i membri del team
Cons:
Puoi condividere le build solo con 25 membri del team interno, che non è adatto ai grandi team
#13 iOS UI Automation
iOS UI Automation è un framework di automazione open source per applicazioni iOS.
Pro:
Usa gli script per automatizzare i test UI
JavaScript è usato per impostare le azioni sul dispositivo
Risparmia il tempo di sviluppo
Cons:
Non funziona bene con altri strumenti e framework
Emulatori
Un emulatore è un ulteriore software per testare le applicazioni mobili per gli ingegneri QA. Di solito non è possibile avere tutti i dispositivi, e gli emulatori aiutano a creare funzioni e peculiarità che imitano un particolare dispositivo. Tuttavia, è impossibile copiare completamente un dispositivo, quindi gli emulatori possono dare solo un’approssimazione. Ecco alcuni strumenti che possono aiutare a imitare il dispositivo reale:
#14 Andy
Andy è un emulatore per applicazioni Android con molte capacità.
Pros:
Può eseguire app di produttività, launcher e giochi
È possibile installare l’accesso root se necessario
Molto produttivo
Esattamente gratuito
Compatibile con macOS
Cons:
Ci possono essere problemi con l’installazione
Leggi anche: Come assicurarsi che la tua app sia sicura: Penetration Testing >
#15 iPadian iPhone emulator
iPadian iPhone emulator è uno dei migliori emulatori iPhone per Windows.
Pro:
Due versioni disponibili (a pagamento e gratuita)
Può lanciare qualsiasi tipo di app iOS
La versione gratuita include l’accesso all’App Store personalizzabile
La versione premium permette di utilizzare qualsiasi app dell’App Store di Apple
Cons:
Le pubblicità possono essere evitate solo nella versione premium
Strumenti di test A/B
Il test A/B ti permette di testare diverse varianti della stessa caratteristica o dettaglio per vedere quale sembra migliore ai tuoi utenti. Per esempio, potresti avere un pulsante per ordinare nella tua applicazione ecommerce. Dove dovresti metterlo? Nell’angolo sinistro o in quello destro? Forse in alto o forse nella parte inferiore dello schermo? A/B ti permette di vedere quale variante è migliore.
Ecco alcuni esempi di strumenti A/B utilizzati per i test delle app mobili:
#16 Taplytics
Taplytics è una piattaforma completamente integrata per i test A/B che invia notifiche push e offre analisi delle app mobili. Offre una vasta gamma di strumenti per l’ottimizzazione delle app.
Pro:
Potente analisi e segmentazione degli utenti
Facile da installare
Rapporti dettagliati
Taplytics BigQuery ottiene i tuoi dati non appena vengono creati dagli utenti
Disponibile sia per iOS che Android
Cons:
L’interfaccia utente non è amichevole
#17 Apptimize
Apptimize ti permette di fare modifiche e implementare nuove funzionalità per alcuni clienti da testare prima di mostrarle a tutti.
Pro:
Possibilità di apportare modifiche in tempo reale
Implementare nuove funzionalità per gli utenti scelti
Può lavorare con una vasta gamma di applicazioni
Cons:
È necessario codificare per utilizzare questo strumento
Servizi e fornitori di test per cellulari
I servizi e i fornitori di test per applicazioni mobili sono solitamente universali e complessi. Il problema per molte aziende è che non hanno abbastanza risorse o dispositivi per testare correttamente le loro applicazioni. Un singolo fornitore può diventare un intero laboratorio di cloud testing con tutti i dispositivi necessari. I laboratori di test di solito forniscono tutti i tipi di test e offrono un supporto completo. Tuttavia, a volte sono piuttosto costosi.
#18 Ubertesters
La piattaforma Ubertesters esegue e controlla i test beta delle vostre applicazioni mobili.
Pros:
Facile da installare
Supporta sia Android che iOS
Contiene in-app bug editing e segnalazione di marcatura
Supporta casi di test
Aiuta a risparmiare tempo
Registrazione video delle sessioni di test
È possibile assumere tester che vi aiuterà con la vostra applicazione
Cons:
Il piano gratuito funziona solo per due progetti
Leggi anche: Flutter Automated Testing. Guida passo dopo passo >
#19 Applause
Applause è un grande servizio di test mobile con più di 200.000 utenti che forniscono servizi di test in-the-wild. È anche uno dei migliori strumenti di test di sicurezza mobile.
Pros:
Funziona sia per Android che per iOS
Combina automazione dei test, beta testing e analisi
Fornisce diversi tipi di test come quelli di usabilità, funzionali, localizzazione, carico, sicurezza e rete
Supporta Android, iOS, applicazioni web-based e Windows
Cons:
#20 UserTesting
UserTesting è una piattaforma che ti permette di ottenere informazioni sulla tua applicazione dagli utenti.
Pro:
Supporta sia i dispositivi Android che iOS
Registra il processo di test
Dà la possibilità di creare i propri test
Nessuna necessità di integrazione SDK
Gratuito
Cons:
Meno possibilità che su altre piattaforme
Il livello di abilità dei tester varia
Strumenti di test mobile bonus
Ecco alcuni strumenti che non sono stati inseriti nella lista ma che vale la pena menzionare.
Testdroid è uno strumento di test di applicazioni mobili basato su cloud che aiuta gli sviluppatori a risparmiare i costi dietro lo sviluppo di app, accelerare il tempo di commercializzazione del prodotto e ridurre i costi operativi e imprevedibili.
Squish è uno strumento per il test automatizzato di applicazioni mobili native, applicazioni web mobili, nonché una miscela di entrambi. I test di Squish possono essere eseguiti su emulatori di dispositivi mobili e su diversi dispositivi reali senza alcuna modifica.
TestProject è una piattaforma di automazione dei test gratuita basata su cloud e alimentata dalla comunità che consente agli utenti di testare applicazioni Web, Android e iOS su tutti i sistemi operativi, senza sforzo.
Conclusione
Ecco il nostro elenco di strumenti di test delle applicazioni mobili. Puoi usarli come parte della tua tecnologia di test delle applicazioni iOS o Android. Ti aiuteranno a migliorare il tuo codice, assicurandoti che soddisfi tutti i requisiti e funzioni perfettamente.
Leggi anche: Tutto quello che devi sapere sulle tecniche di test delle applicazioni mobili >
Ovviamente, nessuno di questi strumenti è perfetto, e ognuno ha i suoi lati forti e deboli. Speriamo che questo articolo vi aiuti a capire meglio il mondo dei test QA. La decisione migliore è quella di utilizzare diversi strumenti insieme per la migliore metodologia di test delle applicazioni mobili.