Appium Oktatóanyag kezdőknek

⚡ Okos összefoglaló

Appium Oktatóanyag ehhez: Android Az iOS Mobile Apps Testing egy nyílt forráskódú felhasználói felület automatizálási keretrendszert vezet be, amely egyetlen eszközzel vezérli a natív, hibrid és webes alkalmazásokat mindkét platformon. Selenium-kompatibilis API. Ez az útmutató elmagyarázza, hogyan Appium működik, telepítési lépések, az Inspector, emulátor melléklet és egy Java Számológép teszteset.

  • 📱 Alapvető definíció: Appium egy nyílt forráskódú mobil felhasználói felület automatizálási keretrendszer, amely támogatja a natív, hibrid és webes alkalmazásokat Android és iOS egyetlen API-n keresztül.
  • 🔌 HTTP szerver modell: Appium Node.js HTTP szerverként fut, amely a WebDriver JSON wire parancsokat platformspecifikus automatizálási hívásokra fordítja.
  • 🧰 Szerszámkészlet: A szükséges előfeltételek közé tartozik Android SDK, JDK, Eclipse, TestNG, Selenium Szerver JAR, a Appium klienskönyvtár, és Appium Desktop.
  • 🔍 Felügyelő és jegyzőkönyvvezető: Appium Az Inspector elemhierarchiákat vizsgál és sablonszkripteket generál, míg az UIAutomator Viewer a Windows tartalék.
  • Java Tesztelési munkafolyamat: Használja a DesiredCapabilities, a RemoteWebDriver és a TestNG annotációk a natív elindításához és érvényesítéséhez Android alkalmazások, mint például a Számológép.

Appium Oktatóanyag ehhez: Android és iOS mobilalkalmazások tesztelése

Mi a Appium?

Appium egy szabadon terjeszthető, nyílt forráskódú mobilalkalmazás felhasználói felülete tesztelés keretet. Appium Lehetővé teszi a natív, hibrid és webes alkalmazások tesztelését, valamint támogatja az automatizálást fizikai eszközökön, valamint emulátorokon és szimulátorokon. Többplatformos alkalmazástesztelést kínál – egyetlen API működik mindkettőhöz. Android és iOS tesztszkriptek.

Appium több mint nem a mobileszköz operációs rendszerétől való függőség. A keretrendszer becsomagolja és lefordítja Selenium WebDriver parancsok az UIAutomation (iOS) vagy UIAutomator rendszerbe (Android) parancsokat az eszköz típusától függően, nem az alapul szolgáló operációs rendszer verziójától.

Appium minden olyan nyelvet támogat, amely rendelkezik Selenium klienskönyvtárak — Java, C-objektív, JavaForgatókönyv Node.js-sel, PHP-vel, Ruby-val, Python, C#, És így tovább.

Hogyan működik Appium Munka?

  • Appium egy HTTP szerver, ami a következőre van írva: node.js platform, amely az iOS-t és Android munkamenetek a WebDriver JSON wire protokollt használva. A Node.js-nek előre telepítve kell lennie a rendszeren a munkamenet elindítása előtt. Appium szervert.
  • Amikor Appium letöltése és telepítése után egy kiszolgáló kerül beállításra a helyi gépen, amely elérhetővé tesz egy REST API-t.
  • A szerver fogadja a kliens csatlakozási és parancskéréseit, és végrehajtja a parancsokat egy mobil eszközön (Android vagy iOS).
  • HTTP válaszokkal válaszol. A kérések végrehajtásához Appium hívások a natív mobilautomatizálási keretrendszerekbe az alkalmazás felhasználói felületének működtetéséhez:
    • Apple Instruments iOS-hez (a hangszerek csak a következő országban érhetők el Xcode 3.0 vagy újabb OS X v10.5 és újabb rendszeren).
    • Google UIAutomator a következőhöz: Android API 16-os vagy magasabb szint.
    • Selendroid mert Android 15-ös vagy alacsonyabb API-szint.

Használati előfeltételek Appium

  1. Telepítés Android SDK (Stúdió) [Link].
  2. Telepítés JDK (Java Fejlesztői készlet) [Link].
  3. Telepítés Eclipse [Link].
  4. Telepítés TestNG mert Eclipse [Link].
  5. Telepítés Selenium Szerver JAR [Link].
  6. Appium Ügyfélkönyvtár [Link].
  7. APK alkalmazásinformációk on Google Lejátszás [Link].
  8. node.js (nem feltétlenül szükséges – amikor Appium A szerver telepítve van, a Node.exe és az NPM a jelenlegivel együtt van csomagolva. Appium változat).
  9. Telepítés Appium asztali.

Telepítés Appium asztali

Appium Az Desktop egy nyílt forráskódú grafikus felhasználói felületű alkalmazás, amely telepíti és futtatja a Appium Szerver. A csomag tartalmazza a használatához szükséges összes előfeltételt. Appium Server, és egy Inspectorral érkezik, amely megjeleníti az alkalmazásaiddal kapcsolatos alapvető információkat, valamint egy Recorderrel, amely sablonkódot generál a mobilalkalmazások automatizálására.

Step 1) Tovább http://appium.io/ és kattintson a Letöltés gombra Appium.

Appium hivatalos weboldal letöltési oldal

Step 2) Minden Windows, válaszd ki az .exe fájlt és töltsd le. A fájl mérete körülbelül 162 MB, és a letöltése az internetsebességedtől függően időbe telhet.

A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a Windows Appium Asztali telepítő

Step 3) Kattintson a letöltött .exe fájlra.

futás Appium Asztali telepítő futtatható fájlja

Step 4) Egy Windows gépen nincs telepítővarázsló — Appium közvetlenül az .exe fájlból fut. Miután az .exe fájlra kattintott, a következő betöltőképernyő jelenik meg néhány percig.

Appium Asztali betöltési animáció

Minden macOS, telepítenie kell a .dmg fájlt.

Step 5) Megnyílik a Kiszolgáló indítása ablak. Kitöltésre kerül az alapértelmezett állomás és port (amelyeket módosíthat), és megjelenik a Appium használatban lévő verzió.

Appium Szerverindítási ablak gazdagéppel és porttal

Step 6) Kattints Szerver indításaEgy új szerver indul el a megadott gépen és porton, és a szervernapló kimenete megjelenik a konzolon.

Appium Szervernapló kimenet indítás után

Step 7) Kattints Új munkamenet ablak.

Új munkamenetablak megnyitása itt: Appium asztali

Step 8) Adja meg a kívánt képességeket, és indítson el egy munkamenetet.

Adja meg a kívánt képességeket a kezdéshez Appium ülés

Appium Ellenőr

Hasonló a Selenium IDE felvétel- és lejátszási eszköz, Appium van egy Ellenőr tesztek rögzítésére és lejátszására. A DOM vizsgálatával rögzíti és játssza le a natív alkalmazás viselkedését, és tesztszkripteket generál bármely támogatott nyelven. Vegye figyelembe, hogy Appium Az Inspector nem támogatott a következőn: Microsoft Windows: be Windows elindítja a Appium Szerver, de nem sikerül elemeit megvizsgálni. Az UIAutomator Viewer az ajánlott tartalék megoldás az elemek vizsgálatára a következőn: Windows.

Lépések a kezdéshez Appium Inspector Mac gépen:

Step 1) Töltse le és indítsa el Appium szerver az alapértelmezett 0.0.0.0 IP-címet és a 4725-ös portot használja.

  1. Válaszd ki a forrásfájlt vagy az .app fájlt a helyi meghajtóról teszteléshez.
  2. Jelölje be az „Alkalmazásútvonal” jelölőnégyzetet a „Választás” gomb engedélyezéséhez.

Step 2) Kattintson a „Kiválasztás” gombra a tesztfájl helyi meghajtón való kereséséhez és kiválasztásához.

Appium Inspector alkalmazásútvonal-kijelölés Mac gépen

Step 3) Indítsd el az iOS szimulátort a Mac gépen.

Step 4) Kattintson az Indít gombra a jobb felső sarokban. Ez egy kék ikont aktivál – kattintson az ikonra a megnyitáshoz Appium Inspector és a szimulátor az előre kiválasztott alkalmazással.

Indít Appium Ellenőr iOS szimulátorral

Step 5) Miután elindították, Appium Az Inspector oszlopok szerint mutatja az elemek hierarchiáját. A felhasználó olyan műveleteket is alkalmazhat, mint a Tap, Swipe és hasonló gesztusok.

Appium Ellenőrző elem hierarchia nézete

Step 6) Kattints megáll a felvétel befejezéséhez.

Csatoljon egy Android Emulátor a Appium

Step 1) Telepítés Android SDK a rendszereden.

Nyissa meg a Vezérlőpult > Rendszer és biztonság > Rendszer elemet. A bal oldali panelen kattintson a Advanced System SettingsA Rendszertulajdonságok felugró ablakban kattintson a Részletes fülön és aztán Környezeti változók.

Nyílt környezeti változók bekapcsolva Windows

Step 2) A Környezeti változók felugró ablakban kattintson duplán a Útvonal és állítsa be ANDROID_HOME változót, amely az SDK könyvtárára mutat. Fűzze hozzá a teljes SDK mappa elérési útját. Például:

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

ANDROID_HOME beállítása a környezeti változókban

Step 3) Indítsa el a Android emulátort, vagy csatoljon egyet Android eszközt a rendszerhez. Győződjön meg arról, hogy az USB-hibakeresés engedélyezve van a Android eszköz: lépjen az Eszközbeállítások > Fejlesztői beállítások > engedélyezze az „USB hibakeresés” lehetőséget.

Step 4) Nyissa meg a Parancssort, és keresse meg a Android SDK-k \platform-tools\ könyvtár (pl. D:\adt-bundle-windows-x86_64-20130514\sdk\platform-tools).

Step 5) Futtassa a adb devices parancs. A csatlakoztatott eszköz megjelenik a Parancssor ablakban. A teljes formátum a következő: adb -s emulator-5554 install <Location of .apk file>.

az adb eszközök parancskimenete, amely a csatlakoztatott emulátort mutatja

Step 6) Futtassa a adb start-server parancs. Az ADB-kiszolgáló elindul, és Appium parancsok küldésére fogja használni a Android eszköz.

Step 7) Navigáljon a Appium könyvtárat a rendszeren, és indítsa el Appium kattintson a Appium.exe fájl.

Step 8) Ne módosítsa az alapértelmezett IP-címet vagy portszámot. Kattintson a Indít. A te Appium A konzol a 127.0.0.1:4723 címen kezdődik, az alábbiak szerint.

Appium konzol, amely a 127.0.0.1:4723 címen fut

Step 9) Kattints Rajt Az Appium A szerver most fut a rendszereden.

Appium Teszteset egy bennszülött számára Android Alkalmazás (Számológép)

Step 1) Töltsd le az ADT-t Eclipse bővítményt, vagy külön töltse le az ADT csomagot a itt .

Step 2) Nyisd ki Eclipse és hozz létre egy új Projekt > Csomag > Osztályt.

Step 3) Importálja a Selenium könyvtár és TestNG az új projektbe.

Step 4) Készíts egy kis tesztprogramot a Számológép.alkalmazás ami két számot összegez.

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.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 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");
        // Package name of the app (get it from an APK info app)
        capabilities.setCapability("appActivity", "com.android.calculator2.Calculator");
        // Launcher activity of the app (get it from an APK info app)

        // Create a RemoteWebDriver instance and connect to the Appium server
        // Launches the Calculator app on the Android device using the capabilities above
        driver = new RemoteWebDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
    }

    @Test
    public void testCal() throws Exception {
        // Locate the keys on the calculator 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 calculator output by tag name
        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();
    }
}

Indítsa el a Appium A szerver és a Android Emulátor az AVD Managerből, majd kattintson a Futtatás > gombra. TestNGA program a kiválasztott emulátoron futtatja a Calculator.app fájlt, és az eredmény megjelenik a Eclipse konzol a TestNG keretet.

A Appium

  1. Appium nem támogatja a tesztelést Android 4.2-nél alacsonyabb verziók.
  2. Korlátozott támogatás a hibrid alkalmazások teszteléséhez – például nem lehet tesztelni a webes nézet és a natív nézet közötti váltást egyik irányban sem.
  3. Nincs támogatás a futáshoz Appium Felügyelő be Microsoft Windows.

Gyakori hibák és hibaelhárítási lépések Appium

hiba Hibaelhárítási lépések
hiba: A következő kívánt képességek szükségesek, de nem lettek megadva: deviceName, platformName Adja hozzá a kívánt képességeket deviceName és a platformName hoz Appium szkript. Például: capabilities.setCapability("deviceName", "Emulator"); és a capabilities.setCapability("platformName", "Android");
hiba: nem található adb. Állítsa be az ANDROID_HOME környezeti változót a Android SDK gyökérkönyvtár elérési útja. Állítsa be az SDK gyökérkönyvtárát a rendszer környezeti változóiban az Elérési út bejegyzés alatt.
hiba: org.openqa.selenium.SessionNotCreatedException: Nem sikerült új munkamenetet létrehozni. Állítson be egy helyes alkalmazás elérési utat, és indítsa újra az alkalmazást. Appium szervert.
Hogyan találhatok meg egy DOM elemet, vagy XPath mobilalkalmazásban? Az UIAutomator Viewer segítségével vizsgálja meg a DOM elemeket Android alkalmazásokat.

GYIK

Selenium automatizálja a webböngészőket; Appium automatizálja a mobilalkalmazásokat. Appium újra felhasználja a WebDriver protokollt, így Selenium a felhasználók gyorsan elsajátítják, de Appium natív, hibrid és mobilwebes alkalmazásokat is működtet Android és iOS platformspecifikus automatizálási motorokon keresztül.

Appium minden olyan nyelvet támogat, amely rendelkezik Selenium WebDriver kliens, beleértve Java, Python, JavaSzkript Node.js, Ruby, C#, PHP és Objective-C segítségével. Ezáltal Appium adaptálható a különböző mérnöki csapatok között anélkül, hogy nyelvi változtatást kellene eszközölni.

Igen. Appium Az eszközre telepített natív alkalmazásokat, beágyazott webes nézetekkel rendelkező hibrid alkalmazásokat, valamint a Chrome-ban vagy Safariban futó mobilwebes alkalmazásokat teszteli. Mindhárom típust egyetlen WebDriver-alapú API vezérli, ami leegyszerűsíti a platformfüggetlen tesztkarbantartást.

Az AI javul Appium önjavító lokátorokon, vizuális validáción és mesterséges intelligencia által generált tesztlépéseken keresztül. A mesterséges intelligencia motorjai észlelik a lokátorok eltérését az alkalmazásfrissítések során, stabil XPath alternatívákat javasolnak, és automatikusan osztályozzák a bizonytalan teszteket, így a mérnökök a valódi hibákra koncentrálhatnak a karbantartás helyett.

Igen. A mesterséges intelligencián alapuló mobil tesztelőeszközök elemzik az alkalmazásképernyőket, azonosítják az interaktív elemeket, és generálnak Appium szkriptek a kívánt képességekkel és helymeghatározókkal. A tesztelők ezután áttekintik és finomítják a szkripteket, ami csökkenti a sablonos megoldásokat és felgyorsítja a beilleszkedést az új csapatok számára. Appium automatizálás.

Foglald össze ezt a bejegyzést a következőképpen: