Tutoriel APPIUM pour Android et tests d'applications mobiles iOS
Qu'est-ce que le Appium?
APPIUM est une interface utilisateur d'application mobile open source distribuรฉe gratuitement Tests 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 lโoption 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
- Installer le SDK ANDROID (Studio)[Lien]-
- Installez le JDK (Java Kit de dรฉveloppement) [Lien]
- Installer Eclipse [Lien]
- Installez TestNg pour Eclipse [Lien]
- Installer Selenium JAR du serveur [Lien]
- Appium Bibliothรจque cliente[Lien]
- Informations sur l'application APK sur Google Play [Lien]
- 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.)
- Installer Appium Bureau
Installer Appium Bureau
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) Allez dans http://appium.io/ et cliquez sur Tรฉlรฉcharger Appium.
ร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.
รtape 3) Cliquez sur l'exe tรฉlรฉchargรฉ.
ร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.
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รฉ.
ร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.
รtape 7) Cliquez sur la fenรชtre Nouvelle session.
รtape 8) Vous pouvez saisir les capacitรฉs souhaitรฉes et dรฉmarrer une session.
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.
- Sรฉlectionnez le fichier source ou les fichiers .app en local ร tester.
- 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.
ร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.
ร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.
ร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 ยป.
ร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
ร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 )
ร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.
ร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) Ouvrez 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
- Appium ne prend pas en charge les tests de Android Version infรฉrieure ร 4.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.
- 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 . |















