Tutorial APPIUM per Android e amp; Test di app per dispositivi mobili iOS

Sommario:

Anonim

Cos'è Appium?

APPIUM è un framework di test dell'interfaccia utente per applicazioni mobili open source distribuito gratuitamente. Appium consente test di applicazioni native, ibride e web e supporta test di automazione su dispositivi fisici, nonché un emulatore o un simulatore. Offre test delle applicazioni multipiattaforma, ovvero una singola API funziona sia per gli script di test della piattaforma Android che iOS.

NON ha alcuna dipendenza dal sistema operativo del dispositivo mobile. Perché APPIUM ha framework o wrapper che traducono i comandi Selenium Webdriver in comandi UIAutomation (iOS) o UIAutomator (Android) a seconda del tipo di dispositivo, non di qualsiasi tipo di sistema operativo.

Appium supporta tutti i linguaggi che dispongono di librerie client Selenium come Java, Objective-C, JavaScript con node.js, PHP, Ruby, Python, C #, ecc.

In questo tutorial, impareremo a conoscere

  • Come funziona APPIUM?
  • Prerequisito per utilizzare APPIUM
  • Installa Appium Desktop:
  • Ispettore APPIUM
  • Collega l'emulatore Android ad Appium
  • Caso di test APPIUM per app Android nativa (calcolatrice)
  • Limitazioni utilizzando APPIUM
  • Errori comuni riscontrati e passaggi per la risoluzione dei problemi in Appium

Come funziona APPIUM?

  • Appium è un "server HTTP" scritto utilizzando una piattaforma Node.js e guida iOS e una sessione Android utilizzando il protocollo di collegamento Webdriver JSON. Quindi, prima di inizializzare Appium Server, Node.js deve essere preinstallato sul sistema.
  • Quando Appium viene scaricato e installato, viene configurato un server sulla nostra macchina che espone un'API REST.
  • Riceve la connessione e la richiesta di comando dal client ed esegue quel comando sui dispositivi mobili (Android / iOS).
  • Risponde con risposte HTTP. Ancora una volta, per eseguire questa richiesta, utilizza i framework di automazione dei test mobili per guidare l'interfaccia utente delle app. Un framework come: -
    • Strumenti Apple per iOS (gli strumenti sono disponibili solo in Xcode 3.0 o versioni successive con OS X v10.5 e versioni successive)
    • Google UIAutomator per Android API livello 16 o superiore
    • Selendroid per API Android livello 15 o inferiore

Prerequisito per utilizzare APPIUM

  1. Installa ANDROID SDK (Studio) [Link] -
  2. Installa JDK (Java Development Kit) [Link]
  3. Installa Eclipse [Link]
  4. Installa TestNg per Eclipse [Link]
  5. Installa Selenium Server JAR [Link]
  6. Libreria client Appium [Link]
  7. Informazioni sull'app APK su Google Play [Link]
  8. js (Non richiesto - Ogni volta che il server Appium è installato, per impostazione predefinita viene fornito con "Node.exe" e NPM. È incluso nella versione corrente di Appium.)
  9. Installa Appium Desktop

Installa Appium Desktop:

Appium Studio è un'app GUI open source per installare Appium Server. Viene fornito in bundle con tutti i prerequisiti per installare e utilizzare Appium Server. Ha anche un ispettore per ottenere informazioni di base sulle tue app. Viene fornito con un registratore per creare codice boilerplate per automatizzare le tue app mobili.

Passaggio 1) Vai su http://appium.io/ e fai clic su Scarica Appium.

Passaggio 2) Per Windows, seleziona il file exe e scarica. Il download del file è di circa 162 MB, richiederà del tempo per il download in base alla velocità di Internet.

Passaggio 3) Fare clic sull'exe scaricato.

Passaggio 4) Su una macchina Windows, non è necessario installare Appium. Funziona direttamente dall'exe. Dopo aver fatto clic sull'exe, vedrai la seguente immagine per alcuni minuti.

Per Mac, è necessario installare il file dmg

Passaggio 5) Successivamente vedrai la finestra di avvio del server. Popola l'host predefinito e l'opzione della porta che puoi modificare. Menziona anche la versione di Appium utilizzata.

Passaggio 6) Facendo clic sul pulsante Avvia server, viene avviato un nuovo server sull'host e sulla porta specificati. Viene visualizzato l'output del registro del server.

Passaggio 7) Fare clic su Nuova finestra di sessione .

Passaggio 8) È possibile inserire le capacità desiderate e avviare una sessione.

Ispettore APPIUM

Simile allo strumento di registrazione e riproduzione IDE Selenium, Appium ha un "Inspector" per registrare e riprodurre. Registra e riproduce il comportamento dell'applicazione nativa ispezionando DOM e genera gli script di test in qualsiasi lingua desiderata. Tuttavia, attualmente non è disponibile il supporto per Appium Inspector per Microsoft Windows. In Windows, avvia Appium Server ma non riesce a ispezionare gli elementi. Tuttavia, il visualizzatore UIAutomator può essere utilizzato come opzione per l'ispezione degli elementi.

Passaggi per iniziare con Appium Inspector su computer Mac: -

Passaggio 1) Scarica e avvia il tuo server Appium con l'indirizzo IP predefinito 0.0.0.0 e la porta 4725.

  1. Seleziona il file di origine o i file .app dal locale da testare.
  2. Seleziona la casella di controllo "Percorso app" per abilitare il pulsante "Scegli".

Passaggio 2) Ora, fare clic sul pulsante "Scegli" per visualizzare e selezionare il file di prova dall'unità locale.

Passaggio 3) Avvia il simulatore su un computer Mac.

Passaggio 4) Fare clic sul pulsante "Avvia" nell'angolo in alto a destra, che abilita un'icona di colore blu. Ancora una volta, fai clic su questa icona di colore blu, aprirà l'ispettore Appium e il simulatore con un'applicazione preselezionata.

Passaggio 5) - L'avvio di Appium Inspector mostrerà la gerarchia degli elementi nella struttura a colonne. Inoltre, un utente può applicare azioni utilizzando pulsanti come Tocca, Scorri, ecc.

Passaggio 6) Fare clic sul pulsante "Stop" per interrompere la registrazione.

Collega l'emulatore Android ad Appium

Passaggio 1) Installa Android SDK nel tuo sistema.

Vai a Pannello di controllo >> Sistema e sicurezza >> Sistema e dal pannello di sinistra fai clic su "Impostazioni di sistema avanzate". Dal pop-up "Proprietà del sistema", fare clic sulla scheda "Avanzate" e quindi fare clic sul pulsante "Variabili d'ambiente".

Passaggio 2) Ora, dal popup "Variabili di ambiente", fai doppio clic su "Percorso" e imposta la variabile ANDROID_HOME che punta alla directory SDK. Nel percorso aggiungere l'intero percorso della cartella SDK.

per esempio -

C: \ Utente \ ABC \ Desktop \ adt-bundled-windows-x86_64-20140321 \ sdk

Passaggio 3) Avvia il tuo emulatore Android o qualsiasi altro dispositivo Android collegato al tuo sistema (assicurati di avere l'opzione Debug Android abilitata sul tuo dispositivo Android. Per controllare l'opzione di debug. Vai a Impostazioni dispositivo >> Opzioni sviluppatore >> Seleziona "Opzione debug" ).

Passaggio 4) Apri il prompt dei comandi e vai alla directory \ platform-tools \ del tuo Android SDK (ad esempio D: \ adt-bundle-windows-x86_64-20130514 \ sdk \ platform-tools).

Passaggio 5) - Esegui il comando "adb devices". Puoi vedere il tuo dispositivo connesso elencato nella finestra del prompt dei comandi. (In CMD scrivi '> adb devices'- Questo comando elencherà le istanze dell'emulatore connesso. Es .: adb -s emulator-5554 install )

Passaggio 6) - Esegui il comando "adb start-server". Avvierà il server ADB che verrà utilizzato da Appium per inviare comandi al tuo dispositivo Android.

Passaggio 7) Ora, vai alla directory Appium nel tuo sistema e avvia Appium facendo clic su un file Appium.exe.

Passaggio 8) Non modificare l'indirizzo IP o il numero di porta e fare clic sul pulsante "Avvia". La tua console Appium parte da 127.0.0.1:4723 come mostrato di seguito.

Passaggio 9) Fare clic sul pulsante "Start", il server Appium ha iniziato a funzionare sul sistema.

Caso di test APPIUM per app Android nativa (calcolatrice)

Passaggio 1) ) Scarica il plug-in ADT eclipse o scarica ADT in bundle separatamente qui

Passaggio 2) Apri Eclipse e crea un nuovo progetto >> Pacchetto >> Classe

Step 3) Importa la libreria Selenium e Testng all'interno di quel nuovo progetto.

Passaggio 4) Ora crea un piccolo programma di test per "Calculator.app" per sommare due numeri.

pacchetto src_Appium;import java.net.MalformedURLException;import java.net.URL;import org.openqa.selenium.By;import org.openqa.selenium.WebDriver;import org.openqa.selenium.WebElement;// import org.openqa.selenium.remote.CapabilityType;import org.openqa.selenium.remote.DesiredCapabilities;import org.openqa.selenium.remote.RemoteWebDriver;import org.testng.annotations. *;calcolatore di classi pubbliche {Driver WebDriver;@Prima della lezionepublic void setUp () genera MalformedURLException {// Configura le funzionalità desiderate e passa l'attività dell'app Android e il pacchetto dell'app ad AppiumCapacità DesiredCapabilities = nuove DesiredCapabilities ();capacità.setCapability ("BROWSER_NAME", "Android");capacità.setCapability ("VERSION", "4.4.2");capacità.setCapability ("deviceName", "Emulator");capacità.setCapability ("platformName", "Android");capacità.setCapability ("appPackage", "com.android.calculator2");// Questo nome del pacchetto della tua app (puoi ottenerlo dall'app di informazioni apk)capacità.setCapability ("appActivity", "com.android.calculator2.Calculator"); // Questa è l'attività di avvio della tua app (puoi ottenerla dall'app di informazioni apk)// Crea l'istanza RemoteWebDriver e connettiti al server Appium// Avvierà l'app Calcolatrice nel dispositivo Android utilizzando le configurazioni specificate in Funzionalità desideratedriver = nuovo RemoteWebDriver (nuovo URL ("http://127.0.0.1:4723/wd/hub", capacità);}@Testpublic void testCal () genera un'eccezione {// individua il testo sulla calcolatrice utilizzando By.name ()WebElement due = driver.findElement (By.name ("2"));two.click ();WebElement plus = driver.findElement (By.name ("+"));plus.click ();WebElement quattro = driver.findElement (By.name ("4"));four.click ();WebElement equalTo = driver.findElement (By.name ());equalTo.click ();// individua la casella di modifica della calcolatrice utilizzando By.tagName ()Risultati WebElement = driver.findElement (By.tagName ("EditText"));// Controlla il valore calcolato nella casella di modificaassert results.getText (). equals ("6"): "Il valore effettivo è: + results.getText () + "non corrisponde al valore atteso: 6";}@Dopo la lezionepublic void teardown () {// chiudi l'appdriver.quit ();}}

Appium Server e Android Emulator da "AVD Manager" e fare clic su Esegui >> TestNG. Il programma precedente eseguirà "Calculator.app" sull'emulatore selezionato e il risultato verrà visualizzato nella console Eclipse utilizzando un framework TestNG.

Limitazioni utilizzando APPIUM

  1. Appium non supporta il test della versione Android inferiore alla 4.2
  2. Supporto limitato per il test delle app ibride. es: non è possibile testare l'azione di commutazione dell'applicazione dalla web app alla nativa e viceversa.
  3. Nessun supporto per eseguire Appium Inspector su Microsoft Windows.

Errori comuni riscontrati e passaggi per la risoluzione dei problemi in Appium

Errore Passaggi per la risoluzione dei problemi
1. errore: - Le seguenti funzionalità desiderate sono necessarie, ma non sono state fornite: nome dispositivo, nome piattaforma 1. Aggiungere le funzionalità desiderate: nome dispositivo, nome piattaforma nello script APPIUM. ad esempio: capacità.setCapability ("deviceName", "Emulator"); capacità.setCapability ("platformName", "Android");
2. errore: impossibile trovare adb. Imposta la variabile d'ambiente ANDROID_HOME con il percorso della directory principale di Android SDK. 2. Probabilmente è necessario impostare il percorso della directory principale dell'SDK nelle "Variabili d'ambiente" di sistema nella colonna "Percorso"
3.errore: org.openqa.selenium.SessionNotCreatedException: non è stato possibile creare una nuova sessione. 3. È necessario impostare un percorso app corretto e riavviare il server Appium.
4. Come trovare l'elemento DOM o XPath in un'applicazione mobile? 4. Utilizzare "UIAutomatorviewer" per trovare l'elemento DOM per l'applicazione Android.