Esegui uno script Robo (iOS+)

Questo documento descrive come utilizzare gli script Robo , ovvero test che automatizzano le attività manuali di QA per le app mobili e abilitano l'integrazione continua (CI) e strategie di test pre-lancio. Ad esempio, puoi utilizzare gli script Robo per testare un percorso utente comune o fornire input specifici dell'interfaccia utente (UI), come un nome utente e una password. Gli script Robo sono una funzionalità del test Robo .

Gli script Robo utilizzano Robo test come motore di test. Nella sua forma più elementare, uno script Robo consiste in una sequenza di azioni dell'interfaccia utente come inserire il testo "nome utente" e quindi toccare il pulsante OK . Gli script Robo possono anche includere azioni come attendere la visualizzazione di un elemento, toccare un punto specifico all'interno di un elemento ed eseguire comandi shell di Android Debug Bridge ( adb ).

Gli script Robo presentano i seguenti vantaggi rispetto ai framework di test tradizionali:

Capacità Descrizione
Altamente robusto Gli script Robo possono tollerare differenze strutturali e comportamentali significative tra le versioni dell'app e la debolezza dell'app.
A tempo indeterminato Una volta completato uno script Robo, il test Robo di base può prendere il sopravvento e continuare a testare l'app. Questo approccio di test continuo consente diversi casi d'uso chiave. Ad esempio, puoi utilizzare uno script Robo per portare un'app in uno stato particolare eseguendo un flusso di accesso personalizzato.
Registrabile Non è necessario codificare manualmente gli script Robo. Possono essere registrati utilizzando il registratore di script Robo in Android Studio. La creazione o la modifica degli script Robo in genere non richiede alcuna conoscenza dello sviluppo mobile.
Flessibile Gli script Robo possono interagire con elementi dell'interfaccia utente non nativi comuni nei giochi.

Gli script Robo vengono attivati ​​in modo condizionale durante un test Robo, che consente agli utenti di migliorare il comportamento di Robo, in genere per ottenere una maggiore copertura o mirare a funzionalità specifiche. A differenza dei framework di test tradizionali, gli script Robo supportano quanto segue:

  • Varie condizioni di attivazione, ad esempio il nome di un particolare pacchetto di app che è attivo (o meno) o un elemento specifico visualizzato sullo schermo (o meno).
  • L'esecuzione controlla, ad esempio, il numero massimo di esecuzioni, la priorità e la fase di scansione pertinente.
  • Tipi di azioni non convenzionali (condizionale, ignoranza degli elementi, chiusura dello schermo).

Ti consigliamo di utilizzare gli script Robo quando possibile perché possono essere mantenuti senza sforzo. Ad esempio, puoi utilizzare uno script Robo per eseguire le seguenti operazioni:

  • Esplora flussi di lavoro significativi per arrivare al nocciolo delle funzionalità di un'app. Ad esempio, puoi eseguire un accesso, impostare lo stato di un'app dopo il primo avvio e registrare un nuovo utente.
  • Concentra Robo su una parte particolare di un'app per ottenere il massimo dal tempo di prova di Robo. Lo script Robo guida il test Robo per raggiungere la parte rilevante di un'app, dove il test Robo riprende una scansione completamente automatizzata.
  • Porta un'app in uno stato o una schermata specifica per eseguire un'analisi, ad esempio per analizzare un messaggio in-app, un'informativa sulla privacy o un livello specifico di un gioco.
  • Esegui un test della strumentazione end-to-end, con o senza il test Robo riprendendo una scansione completamente automatizzata una volta completato lo script Robo.

Utilizza funzionalità di script Robo più avanzate per eseguire le seguenti operazioni:

  • Esegui azioni prima che Robo inizi la scansione dell'app in fase di test o al termine di una scansione, ad esempio pulisci i dati dell'app in fase di test prima di una scansione o modifica le impostazioni del dispositivo.
  • Modificare aspetti del comportamento di Robo durante una scansione, in particolare:
    • Fai in modo che Robo ignori alcuni widget dell'interfaccia utente o schermate delle app.
    • Fornire un'azione personalizzata che Robo possa eseguire quando torna indietro da una schermata particolare.
    • Fai in modo che Robo esegua azioni specifiche ogni volta che viene rilevata una particolare schermata dell'app durante una scansione.
  • Personalizza completamente il modo in cui Robo esegue una scansione. Ad esempio, utilizza una combinazione di azioni condizionali e non condizionali per mantenere l'app in fase di test in background durante tutta la scansione, mentre esegui manipolazioni del dispositivo e chiudi eventuali finestre di dialogo popup visualizzate lungo il percorso.

Tieni presente che gli script Robo non sostituiscono tutti i tipi di test. Hai ancora bisogno di test unitari per individuare bug logici di basso livello nella tua app; questi test in genere non richiedono un ambiente Android o iOS. Ti consigliamo di integrare i test degli script Robo con test di strumentazione mirati che possano contenere asserzioni specifiche e dettagliate sulla logica aziendale, che sono meglio espresse nel codice.

Prossimi passi