Tutoriel APPIUM pour Android et tests d'applications mobiles iOS

Qu’est ce qu' Appium?

APPIUM est une interface utilisateur d'application mobile open source distribuée gratuitement Contrôle de qualité cadre. Appium permet de tester des applications natives, hybrides et Web et prend en charge les tests d'automatisation sur des appareils physiques ainsi que sur un émulateur ou un simulateur. Il propose des tests d'applications multiplateformes, c'est-à-dire qu'une seule API fonctionne à la fois Android et les scripts de test de la plateforme iOS.

Il a NON dépendance au système d’exploitation de l’appareil mobile. Parce qu'APPIUM a un framework ou un wrapper qui traduit Selenium Commandes Webdriver dans UIAutomation (iOS) ou UIAutomator (Android) commandes en fonction du type d'appareil, pas de n'importe quel type de système d'exploitation.

Appium prend en charge toutes les langues qui ont Selenium bibliothèques clientes comme- Java, Objectif c, Javascénario avec node.js, PHP, Ruby, Python, C # et ainsi de suite

Comment fonctionne APPIUM ?

  • Appium est un « serveur HTTP » écrit en utilisant un Node.js plate-forme et pilote iOS et un Android session utilisant le protocole filaire Webdriver JSON. Ainsi, avant d'initialiser le Appium Serveur, Node.js doit être préinstallé sur le système.
  • Lorsque Appium est téléchargé et installé, puis un serveur est configuré sur notre machine qui expose une API REST.
  • Il reçoit la demande de connexion et de commande du client et exécute cette commande sur les appareils mobiles (Android /iOS).
  • Il répond avec des réponses HTTP. Encore une fois, pour exécuter cette requête, il utilise les frameworks d'automatisation des tests mobiles pour piloter l'interface utilisateur des applications. Un cadre comme : -
    • Apple Instruments pour iOS (les instruments sont disponibles uniquement dans Xcode 3.0 ou version ultérieure avec OS X v10.5 et version ultérieure)
    • Google UIAutomator pour Android API niveau 16 ou supérieur
    • Selendroid pour Android API niveau 15 ou moins

Prérequis pour utiliser APPIUM

  1. Installer le SDK ANDROID (Studio)[Lien]-
  2. Installez le JDK (Java Kit de développement) [Lien]
  3. Installer Eclipse [Lien]
  4. Installez TestNg pour Eclipse [Lien]
  5. Installer Selenium JAR du serveur [Lien]
  6. Appium Bibliothèque cliente[Lien]
  7. Informations sur l'application APK sur Google Play [Lien]
  8. js (non obligatoire – à chaque fois Appium Le serveur est installé, il est livré par défaut avec « Node.exe » et NPM. Il est inclus dans la version actuelle de Appium.)
  9. Installer Appium Desktop

Installer Appium Desktop

Appium Studio est une application GUI Open source à installer Appium Serveur. Il est livré avec tous les prérequis pour l'installer et l'utiliser. Appium Serveur. Il dispose également d'un inspecteur pour obtenir des informations de base sur vos applications. Il est livré avec un enregistreur pour créer un code passe-partout pour automatiser vos applications mobiles.

Étape 1) Cliquez sur http://appium.io/ et cliquez sur Télécharger Appium.

Installer Appium Desktop

Étape 2) Pour Windows, sélectionnez le fichier exe et téléchargez-le. Le fichier fait environ 162 Mo et le téléchargement prendra du temps en fonction de votre vitesse Internet.

Installer Appium Desktop

Étape 3) Cliquez sur l'exe téléchargé.

Installer Appium Desktop

Étape 4) Sur un Windows machine, il n'est pas nécessaire d'installer Appium. Il s'exécute directement à partir du fichier exe. Une fois que vous avez cliqué sur le fichier exe, vous verrez l'image suivante pendant quelques minutes.

Installer Appium Desktop

Pour Mac, vous devez installer le dmg

Étape 5) Ensuite, vous verrez la fenêtre de démarrage du serveur. Il remplit l'option d'hôte et de port par défaut que vous pouvez modifier. Il mentionne également la version de Appium utilisé.

Installer Appium Desktop

Étape 6) En cliquant sur le bouton Démarrer le serveur, un nouveau serveur est lancé sur l'hôte et le port spécifiés. La sortie du journal du serveur s'affiche.

Installer Appium Desktop

Étape 7) Cliquez sur la fenêtre Nouvelle session.

Installer Appium Desktop

Étape 8) Vous pouvez saisir les capacités souhaitées et démarrer une session.

Installer Appium Desktop

Inspecteur APPIUM

Similaire à Selenium Outil d'enregistrement et de lecture IDE, Appium dispose d'un « inspecteur » pour enregistrer et lire. Il enregistre et lit le comportement des applications natives en inspectant le DOM et génère les scripts de test dans n'importe quel langage souhaité. Cependant, il n'existe actuellement aucun support pour Appium Inspecteur pour Microsoft Windows. En Windows, il lance le Appium Serveur mais ne parvient pas à inspecter les éléments. Cependant, la visionneuse UIAutomator peut être utilisée comme option pour inspecter les éléments.

Étapes pour commencer Appium Inspecteur sur machine Mac : -

Étape 1) Téléchargez et démarrez votre Appium serveur avec l'adresse IP par défaut 0.0.0.0 et le port 4725.

  1. Sélectionnez le fichier source ou les fichiers .app en local à tester.
  2. Cochez la case « Chemin de l'application » pour activer le bouton « Choisir ».

Étape 2)Maintenant, cliquez sur le bouton « Choisir » pour avoir la possibilité de parcourir et de sélectionner le fichier de test sur le lecteur local.

Inspecteur APPIUM

Étape 3) Démarrez Simulator sur un ordinateur Mac.

Étape 4) Cliquez sur le bouton « Lancer » dans le coin supérieur droit, ce qui active une icône de couleur bleue. Encore une fois, cliquez sur cette icône de couleur bleue, cela ouvrira le Appium inspecteur et simulateur avec une application présélectionnée.

Inspecteur APPIUM

Étape 5)– Lancement de votre Appium L'inspecteur affichera la hiérarchie des éléments dans une structure par colonnes. De plus, un utilisateur peut appliquer des actions à l'aide de boutons tels que Tap, Swipe, etc.

Inspecteur APPIUM

Étape 6) Cliquez sur le bouton « Stop » pour arrêter l'enregistrement.

Attacher Android Émulateur pour Appium

Étape 1) Installer Android SDK dans votre système.

Allez dans Panneau de configuration >> Système et sécurité >> Système et dans le panneau de gauche, cliquez sur « Paramètres système avancés ». Dans la fenêtre contextuelle « Propriétés système », cliquez sur l'onglet « Avancé », puis cliquez sur le bouton « Variables d'environnement ».

Attacher Android Émulateur pour Appium

Étape 2) Maintenant, dans la fenêtre contextuelle « Variables d'environnement », double-cliquez sur « Chemin » et définissez la variable ANDROID_HOME qui pointe vers votre répertoire SDK. Dans le chemin, ajoutez le chemin complet du dossier SDK.

par exemple -

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

Attacher Android Émulateur pour Appium

Étape 3) Commencez votre Android émulateur ou tout autre attachement Android appareil à votre système (assurez-vous d'avoir Android Option de débogage activée dans votre Android appareil. Pour vérifier l’option de débogage. Accédez à Paramètres de l'appareil >> Options du développeur >> Cochez « Option de débogage »).

Étape 4) Ouvrez l'invite de commande et accédez à votre Android Répertoire \platform-tools\ du SDK (par exemple D:\adt-bundle-windows-x86_64-20130514\sdk\platform-tools).

Étape 5)– Exécutez la commande « périphériques adb ». Vous pouvez voir votre appareil connecté répertorié dans la fenêtre d'invite de commande. (Dans CMD, écrivez '>adb devices' - Cette commande listera les instances d'émulateur connectées. Par exemple : adb –s emulator-5554 install )

Attacher Android Émulateur pour Appium

Étape 6)– Exécutez la commande 'adb start-server'. Cela démarrera le serveur ADB qui sera utilisé par Appium pour envoyer des commandes à votre Android appareil.

Étape 7) Maintenant, naviguez vers Appium répertoire dans votre système et démarrez Appium en cliquant sur un Appiumfichier .exe.

Étape 8) Ne modifiez pas l'adresse IP ou le numéro de port et cliquez sur le bouton « Lancer ». Ton Appium la console commence à 127.0.0.1:4723 comme indiqué ci-dessous.

Attacher Android Émulateur pour Appium

Étape 9) Cliquez sur le bouton 'Démarrer', Appium Le serveur a commencé à s'exécuter sur votre système.

Cas de test APPIUM pour natif Android Application (calculatrice)

Étape 1)) Téléchargez le plugin ADT Eclipse ou téléchargez ADT fourni séparément ici

Étape 2) Ouvert Eclipse et créer un nouveau projet >> Package >> Classe

Étape 3) Importer Selenium bibliothèque et Tester à l'intérieur de ce nouveau projet.

Étape 4) Créez maintenant un petit programme de test pour « Calculator.app » pour additionner deux nombres.

package 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.*;


public class Calculator {
WebDriver driver;

@BeforeClass
public void setUp() throws MalformedURLException{
	//Set up desired capabilities and pass the Android app-activity and app-package to Appium
	DesiredCapabilities capabilities = new DesiredCapabilities();
	capabilities.setCapability("BROWSER_NAME", "Android");
	capabilities.setCapability("VERSION", "4.4.2"); 
	capabilities.setCapability("deviceName","Emulator");
	capabilities.setCapability("platformName","Android");
 
   
   capabilities.setCapability("appPackage", "com.android.calculator2");
// This package name of your app (you can get it from apk info app)
	capabilities.setCapability("appActivity","com.android.calculator2.Calculator"); // This is Launcher activity of your app (you can get it from apk info app)
//Create RemoteWebDriver instance and connect to the Appium server
 //It will launch the Calculator App in Android Device using the configurations specified in Desired Capabilities
   driver = new RemoteWebDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
}

@Test
public void testCal() throws Exception {
   //locate the Text on the calculator by using By.name()
   WebElement two=driver.findElement(By.name("2"));
   two.click();
   WebElement plus=driver.findElement(By.name("+"));
   plus.click();
   WebElement four=driver.findElement(By.name("4"));
   four.click();
   WebElement equalTo=driver.findElement(By.name("="));
   equalTo.click();
   //locate the edit box of the calculator by using By.tagName()
   WebElement results=driver.findElement(By.tagName("EditText"));
	//Check the calculated value on the edit box
assert results.getText().equals("6"):"Actual value is : "+results.getText()+" did not match with expected value: 6";

}

@AfterClass
public void teardown(){
	//close the app
	driver.quit();
}
}

Appium Serveur et Android Émulateur depuis 'AVD Manager' et cliquez sur Exécuter >> TestNG. Le programme ci-dessus exécutera « Calculator.app » sur l'émulateur sélectionné et le résultat sera affiché sous Eclipse console à l'aide d'un TestNG cadre.

Limites de l'utilisation d'APPIUM

  1. Appium ne prend pas en charge les tests de Android Version inférieure à 4.2
  2. Prise en charge limitée des tests d'applications hybrides. Ex : impossible de tester l'action de basculement de l'application de l'application web vers l'application native et vice-versa.
  3. Aucun support pour exécuter Appium Inspecteur sur Microsoft Windows.

Erreurs fréquemment rencontrées et étapes de dépannage dans Appium

Erreur Étapes de dépannage
erreur : les fonctionnalités souhaitées suivantes sont requises, mais n'ont pas été fournies : nom de l'appareil, nom de la plate-forme Ajoutez les fonctionnalités souhaitées : nom de l'appareil, nom de la plate-forme dans le script APPIUM. Par exemple : capabilities.setCapability (« deviceName », « Emulator ») ; capabilities.setCapability (« platformName », « Android");
erreur : impossible de trouver adb. Veuillez définir la variable d'environnement ANDROID_HOME avec la Android Chemin du répertoire racine du SDK. Vous devrez probablement configurer le chemin du répertoire racine du SDK dans les « Variables d'environnement » du système dans la colonne « Chemin »
erreur : org.openqa.selenium.SessionNotCreatedException : une nouvelle session n'a pas pu être créée. Vous devez définir un chemin d'application correct et redémarrer le Appium serveur.
Comment trouver un élément DOM ou XPath dans une application mobile ? Utilisez 'UIAutomatorviewer' pour rechercher l'élément DOM pour Android .