Appium Õpetus algajatele

⚡ Nutikas kokkuvõte

Appium Õpetus teemale Android ja iOS-i mobiilirakenduste testimine tutvustab avatud lähtekoodiga kasutajaliidese automatiseerimise raamistikku, mis haldab natiiv-, hübriid- ja veebirakendusi mõlemal platvormil üheainsa liidese abil Selenium-ühilduv API. See juhend selgitab, kuidas Appium töötab, paigaldusjuhised, inspektor, emulaatori manus ja Java Kalkulaatori testjuhtum.

  • 📱 Põhidefinitsioon: Appium on avatud lähtekoodiga mobiilse kasutajaliidese automatiseerimise raamistik, mis toetab natiivseid, hübriid- ja veebirakendusi kõikjal Android ja iOS ühe API kaudu.
  • 🔌 HTTP-serveri mudel: Appium töötab Node.js HTTP-serverina, mis tõlgib WebDriver JSON-i juhtmekäsud platvormipõhisteks automatiseerimiskõnedeks.
  • 🧰 Tööriistade virn: Nõutavad eeldused hõlmavad järgmist Android SDK, JDK Eclipse, TestNG, Selenium Serveri JAR Appium klienditeek ja Appium Töölaud.
  • 🔍 Inspektor ja protokollija: Appium Inspector kontrollib elementide hierarhiaid ja genereerib mallipõhiseid skripte, samas kui UIAutomator Viewer on Windows varuvariant.
  • Java Testi töövoog: Kasutage funktsioone DesiredCapabilities, RemoteWebDriver ja TestNG märkused natiivide käivitamiseks ja valideerimiseks Android rakendused, näiteks kalkulaator.

Appium Õpetus teemale Android ja iOS-i mobiilirakenduste testimine

Mis on Appium?

Appium on vabalt levitatav avatud lähtekoodiga mobiilirakenduse kasutajaliides testimine raamistik. Appium võimaldab natiivset, hübriid- ja veebirakenduste testimist ning toetab automatiseerimist nii füüsilistes seadmetes kui ka emulaatorites ja simulaatorites. See pakub platvormideülest rakenduste testimist – üks API töötab mõlema jaoks Android ja iOS-i testskriptid.

Appium on ei sõltuvus mobiilseadme operatsioonisüsteemist. Raamistik mähib ja tõlgib Selenium WebDriveri käsud UIAutomationisse (iOS) või UIAutomatorisse (Android) käske seadme tüübist, mitte aluseks olevast operatsioonisüsteemi versioonist olenevalt.

Appium toetab kõiki keeli, millel on Selenium klienditeegid — Java, Eesmärk-C, JavaScript Node.js, PHP ja Ruby abil Python, C#Ja palju muud.

Kuidas Appium Töötad?

  • Appium on HTTP-server, mis on kirjutatud Node.js platvorm, mis juhib iOS-i ja Android seansid, mis kasutavad WebDriver JSON-i juhtmeprotokolli. Enne käivitamist peab Node.js olema süsteemi eelinstallitud. Appium server.
  • Kui Appium on alla laaditud ja installitud, seadistatakse kohalikus masinas server, mis avaldab REST API.
  • Server võtab kliendilt vastu ühenduse loomise ja käskluste päringuid ning käivitab käsklused mobiilseadmes (Android või iOS).
  • See vastab HTTP-vastustega. Päringute täitmiseks Appium rakenduse kasutajaliidese juhtimiseks mõeldud natiivsete mobiilse automatiseerimise raamistike kõned:
    • Apple Instruments iOS-ile (instrumendid on saadaval ainult Xcode 3.0 või uuem koos OS X v10.5 ja uuemate versioonidega).
    • Google UIAutomator jaoks Android API tase 16 või kõrgem.
    • Selendroid eest Android API tase 15 või madalam.

Kasutamise eeldused Appium

  1. paigaldama Android SDK (Stuudio) [on siin].
  2. paigaldama JDK (Java Arenduskomplekt) [on siin].
  3. paigaldama Eclipse [on siin].
  4. paigaldama TestNG eest Eclipse [on siin].
  5. paigaldama Selenium Server JAR [on siin].
  6. Appium Kliendi raamatukogu [on siin].
  7. APK rakenduse teave on Google Mängi [on siin].
  8. Node.js (pole rangelt nõutav — kui Appium Server on installitud, Node.exe ja NPM on praegusega kaasas Appium versioon).
  9. paigaldama Appium lauaarvuti.

paigaldama Appium lauaarvuti

Appium Desktop on avatud lähtekoodiga graafilise kasutajaliidesega rakendus, mis installib ja käivitab Appium Server. See on komplektis kõigi kasutamiseks vajalike eeltingimustega. Appium Server ja sellega on kaasas inspektor, mis kuvab teie rakenduste põhiteavet, ja salvestaja, mis genereerib mobiilirakendusi automatiseeriva mallikoodi.

Step 1) Minna http://appium.io/ ja klõpsake nuppu Laadi alla Appium.

Appium ametliku saidi allalaadimisleht

Step 2) eest Windows, vali .exe-fail ja laadi see alla. Fail on umbes 162 MB suurune ja selle allalaadimine võtab teie internetikiirusest olenevalt aega.

Vali Windows Appium Töölaua installija

Step 3) Klõpsake allalaaditud .exe-failil.

jooks Appium Töölaua installija käivitatav fail

Step 4) Kohta Windows masinal puudub installiviisard — Appium käivitub otse .exe-failist. Pärast .exe-failile klõpsamist ilmub mõneks minutiks järgmine avaaken.

Appium Töölaua laadimise animatsioon

eest macOS, peate installima .dmg-faili.

Step 5) Avaneb serveri käivitamise aken. See täidab vaikeshosti ja -pordi (mida saate muuta) ning kuvab Appium kasutusel olev versioon.

Appium Serveri käivitusaken koos hosti ja pordiga

Step 6) Click Käivita serverMääratud hostil ja pordil käivitatakse uus server ning serveri logi väljund kuvatakse konsoolis.

Appium Serveri logi väljund pärast käivitamist

Step 7) Click Uue seansi aken.

Ava uus seansiaken rakenduses Appium lauaarvuti

Step 8) Sisestage soovitud võimalused ja alustage seanssi.

Alustamiseks sisestage soovitud võimalused Appium istung

Appium inspektor

Sarnaselt Selenium IDE salvestamise ja taasesituse tööriist, Appium on inspektor testide salvestamiseks ja taasesitamiseks. See salvestab ja esitab natiivse rakenduse käitumist, kontrollides DOM-i ja genereerides testiskripte mis tahes toetatud keeles. Pange tähele, et Appium Inspektor ei ole toetatud Microsoft Windows: peal Windows see käivitab Appium Server, aga elementide kontrollimine ebaõnnestub. UIAutomator Viewer on soovitatav varuvõimalus elementide kontrollimiseks serveris Windows.

Alustamiseks vajalikud sammud Appium Inspektor Maci arvutis:

Step 1) Laadige alla ja käivitage oma Appium server, mis kasutab vaikimisi IP-aadressi 0.0.0.0 ja porti 4725.

  1. Valige testimiseks oma kohalikult draivilt lähtefail või .app-fail.
  2. Märkige ruut „Rakenduse tee”, et lubada nupp „Vali”.

Step 2) Klõpsake nuppu „Vali“, et sirvida ja valida kohalikult draivilt testfail.

Appium Inspectori rakenduse tee valimine Macis

Step 3) Käivitage Mac-arvutis iOS-i simulaator.

Step 4) kliki Algatama paremas ülanurgas olev nupp. See aktiveerib sinise ikooni – avamiseks klõpsake sellel ikoonil Appium Inspektor ja simulaator eelvalitud rakendusega.

Algatama Appium Inspektor iOS-i simulaatoriga

Step 5) Kui see on käivitatud, Appium Inspektor kuvab elementide hierarhiat veergude kaupa. Kasutaja saab rakendada ka toiminguid, näiteks puudutamist, libistamist ja sarnaseid žeste.

Appium Inspektori elementide hierarhia vaade

Step 6) Click Peatus salvestamise lõpetamiseks.

Kinnitage Android Emulaator Appium

Step 1) paigaldama Android SDK teie süsteemis.

Ava Juhtpaneel > Süsteem ja turvalisus > Süsteem. Klõpsake vasakpoolsel paneelil Süsteemi täpsemad seadedKlõpsake hüpikaknas Süsteemi atribuudid nuppu edasijõudnud vahelehel ja siis Keskkonna muutujad.

Avatud keskkonnamuutujad on sisse lülitatud Windows

Step 2) Topeltklõpsake hüpikaknas Keskkonnamuutujad Tee ja määrake ANDROID_HOME muutuja, mis osutab teie SDK kataloogile. Lisage täielik SDK kausta tee. Näiteks:

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

Määrake keskkonnamuutujates ANDROID_HOME

Step 3) Alustage Android emulaator või ühendage see Android seadme oma süsteemiga. Veenduge, et USB-silumine on teie seadmes lubatud. Android seade: minge menüüsse Seadme seaded > Arendaja valikud > lubage „USB silumine”.

Step 4) Avage käsuviip ja navigeerige sinna Android SDK-d \platform-tools\ kataloog (näiteks D:\adt-bundle-windows-x86_64-20130514\sdk\platform-tools).

Step 5) Käivita adb devices käsk. Teie ühendatud seade kuvatakse käsuviibaaknas. Täielik vorm on järgmine: adb -s emulator-5554 install <Location of .apk file>.

adb-seadmete käsu väljund, mis näitab ühendatud emulaatorit

Step 6) Käivita adb start-server käsk. ADB-server käivitub ja Appium kasutab seda käskude saatmiseks teie Android Seade.

Step 7) Liikuge Appium kataloogi oma süsteemis ja käivitage Appium klõpsates nupul Appium.exe-fail.

Step 8) Ärge muutke vaike-IP-aadressi ega pordi numbrit. Klõpsake Algatama. Sinu Appium konsool algab aadressilt 127.0.0.1:4723, nagu allpool näidatud.

Appium konsool töötab serveril 127.0.0.1:4723

Step 9) Click Avaleht. Appium server töötab nüüd teie süsteemis.

Appium Testjuhtum põliselaniku jaoks Android Rakendus (kalkulaator)

Step 1) Laadige alla ADT Eclipse plugin või hankige ADT pakett eraldi saidilt siin.

Step 2) avatud Eclipse ja loo uus Projekt > Pakett > Klass.

Step 3) Importige Selenium raamatukogu ja TestNG uude projekti.

Step 4) Loo väike testprogramm Kalkulaator.rakendus mis liidab kaks arvu.

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();
    }
}

Alusta Appium Server ja Android Emulaator AVD Managerist ja seejärel klõpsake nuppu Käivita > TestNGProgramm käivitab valitud emulaatoril Calculator.app'i ja tulemus kuvatakse Eclipse konsooli abil TestNG raamistik.

Piirangud Appium

  1. Appium ei toeta testimist Android versioonid, mis on vanemad kui 4.2.
  2. Hübriidrakenduste testimise piiratud tugi – näiteks pole võimalik testida veebivaate ja natiivvaate vahelist lülitustoimingut kummaski suunas.
  3. Jooksmiseks pole tuge Appium Inspektor peal Microsoft Windows.

Levinumad vead ja tõrkeotsingu sammud jaotises Appium

viga Tõrkeotsingu toimingud
viga: Järgmised soovitud võimalused on nõutavad, kuid neid ei esitatud: seadmeNimi, platvormiNimi Lisage soovitud võimed deviceName ja platformName Euroopa Appium skript. Näiteks: capabilities.setCapability("deviceName", "Emulator"); ja capabilities.setCapability("platformName", "Android");
viga: adb ei leitud. Määrake keskkonnamuutuja ANDROID_HOME Android SDK juurkataloogi tee. Määrake SDK juurkataloog süsteemi keskkonnamuutujates teekonna kirje all.
viga: org.openqa.selenium.SessionNotCreatedException: Uut seanssi ei saanud luua. Määrake õige rakenduse tee ja taaskäivitage Appium server.
Kuidas leida DOM-elementi või XPath mobiilirakenduses? Kasutage DOM-elementide kontrollimiseks UIAutomator Viewerit Android rakendusi.

KKK

Selenium automatiseerib veebibrausereid; Appium automatiseerib mobiilirakendusi. Appium taaskasutab WebDriveri protokolli nii Selenium kasutajad võtavad selle kiiresti omaks, aga Appium käivitab ka natiivseid, hübriid- ja mobiilveebirakendusi Android ja iOS platvormipõhiste automatiseerimismootorite kaudu.

Appium toetab kõiki keeli, millel on Selenium WebDriveri klient, sealhulgas Java, Python, JavaSkript Node.js, Ruby, C#, PHP ja Objective-C abil. See teeb Appium kohandatav erinevate insenerimeeskondade vahel ilma keelevahetust sundimata.

Jah. Appium testib seadmesse installitud natiivrakendusi, manustatud veebivaadetega hübriidrakendusi ja Chrome'is või Safaris töötavaid mobiiliveebirakendusi. Kõiki kolme tüüpi haldab üks WebDriveril põhinev API, mis lihtsustab platvormideülest testimist.

Tehisintellekt paraneb Appium sviite isetervendavate lokaatorite, visuaalse valideerimise ja tehisintellekti loodud testietappide abil. Tehisintellekti mootorid tuvastavad lokaatori triivi rakenduse värskenduste vahel, soovitavad stabiilseid XPath-alternatiive ja klassifitseerivad ebaühtlaseid teste automaatselt, et insenerid saaksid keskenduda tegelikele defektidele, mitte hooldusele.

Jah. Tehisintellektil põhinevad mobiilitestimise tööriistad analüüsivad rakenduste ekraane, tuvastavad interaktiivseid elemente ja genereerivad Appium skriptid soovitud võimaluste ja lokaatoritega. Seejärel vaatavad testijad skriptid üle ja täpsustavad neid, mis vähendab standardset lähenemist ja kiirendab uute meeskondade sisseelamist Appium automaatika.

Võta see postitus kokku järgmiselt: