introduction appium
Questo tutorial spiega cos'è Appium, la sua architettura, il flusso di lavoro e come utilizzare questo strumento open source per l'automazione mobile su Android e iOS:
Appium è uno strumento di automazione mobile open source che fornisce automazione su piattaforme come Android, iOS, ecc.
Supporta anche l'automazione utilizzando più linguaggi di programmazione come Java, PHP, Perl, Python, ecc.Quindi, gli utenti possono utilizzare qualsiasi linguaggio di programmazione con cui si sentono a proprio agio e scrivere script automatizzati.
=> Guarda qui la serie di formazione Appium semplice.
Cosa imparerai:
Cos'è Appium?
Ecco un video tutorial:
Panoramica delle app
Tutte le applicazioni possono essere automatizzate, comprese le app native, ibride e web.Di seguito viene fornita una semplice panoramica dei vari tipi di applicazioni.
- App native: Queste appvengono scritti utilizzando iOS, Android o Windows SDK.È possibile accedervi solo dopo l'installazione nel dispositivo. Per esempio, Skype, che può essere utilizzato solo dopo l'installazione nel dispositivo. Non possiamo aprire l'app tramite il browser.
- ragnatela App: App Web mobiliè possibile accedervi utilizzando un browser mobile.È possibile accedere alle app Web solo tramite browser. Per esempio, softwaretestinghelp.com è accessibile solo tramite il browser. Non abbiamo un'app separata disponibile per il sito web.
- Ibrido App: Questiapphanno un involucro attorno a una 'visualizzazione web', un controllo nativo che consente l'interazione con il contenuto web.Questi possono essere installati nel dispositivo e accessibili tramite l'URL del browser. Per esempio, Amazon può essere installato come app separata nel dispositivo ed è possibile accedervi anche tramite browser come Amazon.
Ancora più importante, questo strumento è 'multipiattaforma', che consente di scrivere test su più piattaforme (iOS, Android, Windows), utilizzando la stessa API. Ciò consente il riutilizzo del codice tra dispositivi iOS, Android e Windows.
Architettura delle epoche
Si tratta di un server HTTP scritto nel linguaggio di programmazione Node.js che gestisce le sessioni WebDriver. Il server Appium riceve le richieste HTTP dalle librerie client in formato JSON. Le richieste vengono quindi gestite in modi diversi, a seconda della piattaforma su cui vengono eseguite.
Segue l'architettura client-server. Ci sono 3 componenti inclusi in esso:
- client appium
- appium server
- Dispositivo finale
# 1) cliente Marcus
Il codice di automazione con script è ciò che chiamiamo Appium Client.
editor di script di shell gratuito per Windows
Il codice è scritto in qualsiasi linguaggio di programmazione come PHP, Java, Phyton, ecc. Questo script di automazione contiene i dettagli di configurazione del dispositivo mobile e dell'applicazione. Insieme a ciò, la logica / il codice per eseguire i casi di test dell'applicazione sono script.
# 2) server di epoche
Il server Appium è scritto utilizzando il linguaggio di programmazione Node.js.Riceve le richieste di connessione e comando dal client Appium in formato JSON ed esegue quel comando sui dispositivi mobili. Il Server è necessario per essere installato nella macchina e viene avviato prima di richiamare il codice di automazione.
Il server interagisce con varie piattaforme come iOS e Android. Crea una sessione per interagire con i dispositivi finali delle app mobili. È un server HTTP scritto nel linguaggio di programmazione Node.js che legge le richieste HTTP dalle librerie client e invia queste richieste alla piattaforma appropriata.
Per avviare il server, gli utenti devono scaricare il sorgente o installarlo direttamente da Npm. Fornisce inoltre la versione GUI del server. Puoi scaricarlo dall'Appium ufficiale posto .
Nel prossimo capitolo, discuteremo più dettagliatamente la versione della GUI. Uno dei maggiori vantaggi di questo strumento è che il codice che utilizzi per interagire con esso è scritto in molti linguaggi come Java, C #, Ruby, Python, ecc. Poiché Appium è l'API REST al suo interno.
# 3) Dispositivo finale
Questo è principalmente un dispositivo mobile in tempo reale o un emulatore. Gli script di automazione vengono eseguiti nel dispositivo finale dal server Appium tramite i comandi del client.
Il flusso di lavoro di Appium Architecture
Il client Appium che contiene i dettagli di configurazione e lo script di automazione per i casi di test invia i comandi al server in formato JSON. Lo script di automazione viene convertito in formato JSON da file jar incorporati nel client.
Appium Server quindi riconosce il comando e stabilisce una connessione con il dispositivo finale corrispondente. Una volta stabilita la connessione, avvia l'esecuzione dei casi di test nel dispositivo finale. Il dispositivo finale risponde alla richiesta sotto forma di HTTP all'Appium.
Man mano che i casi di test vengono eseguiti nel dispositivo mobile / emulatore, popola il registro di tutte le azioni eseguite nel dispositivo / emulatore.
Funzionamento di Appium su iOS
Questo strumento utilizza l'API UIAutomation di Apple per interagire con gli elementi dell'interfaccia utente dell'applicazione su un dispositivo iOS. UIAutomation è una libreria JavaScript fornita da Apple Company. Utilizza queste librerie per automatizzare le applicazioni in iOS.
Quando eseguiamo gli script di test, i comandi negli script di test vengono presi sotto forma di JSON tramite una richiesta HTTP al server Appium. Il server invia il comando a questi strumenti e gli strumenti cercano il file bootstrap.js.
Quindi, questi comandi vengono eseguiti nel file bootstrap.js all'interno dell'ambiente degli strumenti iOS. Dopo l'esecuzione del comando, il client restituisce il messaggio (successo / fallimento) al server Appium con i dettagli del registro del comando eseguito.
Funzionamento di Appium su Android
Appium utilizza il framework UIAutomator per interagire con gli elementi dell'interfaccia utente dell'applicazione su un dispositivo Android. UIAutomator è un framework sviluppato dagli sviluppatori Android per testare la sua interfaccia utente.
Qui, invece dell'API UIAutomation come abbiamo visto in Apple, abbiamo un UIAutomator / Selendroid e bootstrap.jar al posto del file bootstrap.js. Supporta tutte le versioni di Android che sono maggiori o uguali a 17; per le versioni precedenti di Android, Appium utilizza il framework Selendroid.
Quando eseguiamo gli script di test, Appium invia il comando in formato JSON a UIAutomator o Selendroid in base alla versione Android. Qui, bootstrap.jar funge da server TCP, che possiamo utilizzare per inviare il comando di prova per eseguire l'azione sul dispositivo Android utilizzando UIAutomator / Selendroid.
Conclusione
In questo capitolo, abbiamo acquisito una conoscenza di base di Appium, l'architettura, il flusso di lavoro e il funzionamento di Appium su iOS / Android.
come diventare un revisore di videogiochi
Nel prossimo capitolo vedremo come configurare Appium e altri software di base da installare per Mobile Automation su dispositivi reali.
Tutorial PREV | PROSSIMO Tutorial
Lettura consigliata
- Crea test Appium per un'app Android
- Introduzione ad Appium Studio: vantaggi e caratteristiche principali
- Esecuzione dei test di Appium in parallelo utilizzando Appium Studio per Eclipse
- Creazione di test di epoche utilizzando epochs Studio for Eclipse
- Appium Studio for Eclipse: automazione end-to-end Appium / Selenium di Eclipse
- Tutorial Appium per testare app mobili Android e iOS
- Collegamento di dispositivi iOS e Android reali da Cloud ad Appium Studio
- Crea Appium Test per un'app iOS