Application mobile: Tutoriel APPIUM pour les tests d’applications mobiles Android et iOS

Qu’est-ce qu’Appium ?

APPIUM est un framework de test d’interface utilisateur d’application open source distribué gratuitement. Appium permet des tests d’applications natives, hybrides et Web et prend en charge les tests d’automatisation sur des appareils physiques ainsi qu’un émulateur ou un simulateur à la fois. Il propose des tests d’applications multiplates-formes, c’est-à-dire qu’une seule API fonctionne à la fois pour les scripts de test des plates-formes Android et iOS.

Il a NON dépendance vis-à-vis du système d’exploitation de l’appareil . Parce qu’APPIUM dispose d’un framework ou d’un wrapper qui traduit les commandes Selenium Webdriver en commandes UIAutomation (iOS) ou UIAutomator (Android) en fonction du type d’appareil, et non de n’importe quel type de système d’exploitation.

Appium prend en charge tous les langages dotés de bibliothèques clientes Selenium telles que Java, Objective-C, JavaScript avec node.js, PHP, Ruby, Python, C#, etc.

Dans ce tutoriel, nous allons découvrir

Comment fonctionne APPIUM ?

  • Appium est un « serveur HTTP » écrit à l’aide d’une plate-forme Node.js et pilote une session iOS et Android à l’aide du protocole Webdriver JSON. Par conséquent, avant d’initialiser le serveur Appium, Node.js doit être pré-installé sur le système.
  • Lorsque Appium est téléchargé et installé, 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 s (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 s pour piloter l’interface utilisateur des applications. Un cadre comme : –
    • Instruments Apple 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)[Link]-
  2. Installer JDK (Kit de développement Java) [Link]
  3. Installer Eclipse [Link]
  4. Installer TestNg pour Eclipse [Link]
  5. Installer le JAR du serveur Selenium [Link]
  6. Bibliothèque cliente Appium[Link]
  7. Informations sur l’application APK sur Google Play [Link]
  8. js (Non requis – Chaque fois que le serveur Appium est installé, il est fourni par défaut avec « Node.exe » et NPM. Il est inclus dans la version actuelle d’Appium.)
  9. Installer Appium Desktop

Installez Appium Desktop :

Appium Studio est une application graphique open source pour installer Appium Server. Il est fourni avec tous les prérequis pour installer et utiliser Appium Server. 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 s.

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

Tutoriel APPIUM pour les débutants

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

Tutoriel APPIUM pour les débutants

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

Tutoriel APPIUM pour les débutants

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

Tutoriel APPIUM pour les débutants

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 d’Appium utilisée.

Tutoriel APPIUM pour les débutants

É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 est affichée.

Tutoriel APPIUM pour les débutants

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

Tutoriel APPIUM pour les débutants

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

Tutoriel APPIUM pour les débutants

Inspecteur APPIUM

Semblable à l’outil d’enregistrement et de lecture Selenium IDE, Appium dispose d’un « inspecteur » pour enregistrer et lire. Il enregistre et joue le comportement natif de l’application en inspectant le DOM et génère les scripts de test dans n’importe quelle langue souhaitée. Cependant, actuellement, il n’y a pas de support pour Appium Inspector pour Microsoft Windows. Sous Windows, il lance le serveur Appium mais ne parvient pas à inspecter les éléments. Cependant, la visionneuse UIAutomator peut être utilisée comme option pour l’inspection des éléments.

Étapes pour démarrer avec Appium Inspector sur une machine Mac : –

Étape 1) Téléchargez et démarrez votre serveur Appium 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 du local à tester.
  2. Cochez la case « App Path » pour activer le bouton « Choisir ».

Étape 2)Maintenant, cliquez sur le bouton « Choisir » pour permettre de parcourir et de sélectionner le fichier de test à partir du lecteur local.

Tutoriel APPIUM pour les débutants

Étape 3) Démarrez le simulateur sur la machine 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 l’inspecteur et le simulateur Appium avec une application présélectionnée.

Tutoriel APPIUM pour les débutants

Étape 5)– Le lancement de votre inspecteur Appium affichera la hiérarchie des éléments dans une structure par colonnes. En outre, un utilisateur peut appliquer des actions à l’aide de boutons tels que Tap, Swipe, etc.

Tutoriel APPIUM pour les débutants

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

Attacher l’émulateur Android à Appium

Étape 1) Installez le SDK Android sur 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 du système », cliquez sur l’onglet « Avancé », puis cliquez sur le bouton « Variables d’environnement ».

Tutoriel APPIUM pour les débutants

É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:UserABCDesktopadt-bundled-windows-x86_64-20140321sdk

Tutoriel APPIUM pour les débutants

Étape 3) Démarrez votre émulateur Android ou connectez n’importe quel appareil Android à votre système (assurez-vous que l’option de débogage Android est activée sur votre appareil Android. Pour vérifier l’option de débogage. Allez dans Paramètres de l’appareil >> Options du développeur >> Cochez « Option de débogage »).

Étape 4) Ouvrez l’invite de commande et accédez au répertoire platform-tools de votre SDK Android (par exemple, D:adt-bundle-windows-x86_64-20130514sdkplatform-tools).

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

Tutoriel APPIUM pour les débutants

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

Étape 7) Maintenant, accédez au répertoire Appium de votre système et démarrez Appium en cliquant sur un fichier Appium.exe.

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

Tutoriel APPIUM pour les débutants

Étape 9) Cliquez sur le bouton « Démarrer », le serveur Appium a commencé à fonctionner sur votre système.

Cas de test APPIUM pour l’application Android native (calculatrice)

Étape 1)) Téléchargez le plug-in ADT eclipse ou téléchargez ADT fourni séparément ici

Étape 2) Ouvrez Eclipse et créez un nouveau projet >> Package >> Classe

Étape 3) Importez la bibliothèque Selenium et Testng dans 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("https://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();
}
}

Serveur Appium et émulateur Android à partir de ‘AVD Manager’ et cliquez sur Exécuter >> TestNG. Le programme ci-dessus exécutera le « Calculator.app » sur l’émulateur sélectionné et le résultat affiché sous la console Eclipse à l’aide d’un framework TestNG.

Limitations de l’utilisation d’APPIUM

  1. Appium ne prend pas en charge les tests de la version Android 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 native et vice-versa.
  3. Aucune prise en charge pour exécuter Appium Inspector sur Microsoft Windows.

Erreurs courantes et étapes de dépannage dans Appium

ErreurÉtapes de dépannage
1. erreur : Les capacités souhaitées suivantes sont requises, mais n’ont pas été fournies : nom de l’appareil, nom de la plate-forme1. 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 »); capacités.setCapability (« nom de la plate-forme », « Android »);
2. erreur : impossible de trouver l’adb. Veuillez définir la variable d’environnement ANDROID_HOME avec le chemin du répertoire racine du SDK Android.2. Vous devez probablement configurer le chemin du répertoire racine du SDK dans le système « Variables d’environnement » dans la colonne « Chemin »
3.error:org.openqa.selenium.SessionNotCreatedException : une nouvelle session n’a pas pu être créée.3. Vous devez définir un chemin d’application correct et redémarrer le serveur Appium.
4. Comment trouver un élément DOM ou XPath dans une application ?4. Utilisez ‘UIAutomatorviewer’ pour trouver l’élément DOM pour l’application Android.

.

#Tutoriel #APPIUM #pour #les #tests #dapplications #s #Android #iOS