Appium Opplæring for nybegynnere
⚡ Smart oppsummering
Appium Veiledning for Android og iOS Mobile Apps Testing introduserer et åpen kildekode-rammeverk for UI-automatisering som driver native, hybride og webapper på begge plattformene med én enkelt Selenium-kompatibelt API. Denne veiledningen forklarer hvordan Appium verk, installasjonstrinn, inspektøren, emulatorvedlegg og en Java Testtilfelle for kalkulator.

Hva er Appium?
Appium er et fritt distribuert brukergrensesnitt for åpen kildekode-mobilapplikasjoner testing rammeverk. Appium tillater testing av native, hybride og webapplikasjoner, og støtter automatisering på fysiske enheter så vel som på emulatorer og simulatorer. Den tilbyr applikasjonstesting på tvers av plattformer – et enkelt API fungerer for begge. Android og iOS-testskript.
Appium har Nei. avhengighet av mobilenhetens operativsystem. Rammeverket pakker inn og oversetter Selenium WebDriver-kommandoer i UIAutomation (iOS) eller UIAutomator (Android)-kommandoer avhengig av enhetstypen, ikke den underliggende operativsystemversjonen.
Appium støtter alle språk som har Selenium klientbiblioteker — Java, Mål-C, JavaScript med Node.js, PHP, Ruby, Python, C#, Og mer.
Hvordan gjør Appium Arbeid?
- Appium er en HTTP-server skrevet på node.js plattform som driver iOS og Android økter ved hjelp av WebDriver JSON-ledningsprotokollen. Node.js må være forhåndsinstallert på systemet før oppstart Appium server.
- Når Appium er lastet ned og installert, settes det opp en server på den lokale maskinen som eksponerer et REST API.
- Serveren godtar tilkoblings- og kommandoforespørsler fra klienten og utfører kommandoene på en mobil enhet (Android eller iOS).
- Den svarer med HTTP-svar. For å utføre forespørsler, Appium kall til native mobilautomatiseringsrammeverk for å drive applikasjonens brukergrensesnitt:
- Apple Instruments for iOS (Instrumenter er kun tilgjengelig i Xcode 3.0 eller nyere med OS X v10.5 og nyere).
- Google UIAutomator for Android API-nivå 16 eller høyere.
- Selendroid forum Android API-nivå 15 eller lavere.
Forutsetninger for bruk Appium
- Install Android SDK (Studio) [link].
- Install JDK (Java Utviklingssett) [link].
- Install Eclipse [link].
- Install TestNG forum Eclipse [link].
- Install Selenium Server JAR [link].
- Appium Klientbibliotek [link].
- APK-appinformasjon on Google Spill [link].
- node.js (ikke strengt tatt påkrevd – når Appium Serveren er installert, Node.exe og NPM er samlet med den gjeldende Appium versjon).
- Install Appium desktop.
Install Appium desktop
Appium Desktop er et åpen kildekode-grensesnittprogram som installerer og kjører Appium Server. Den leveres med alle nødvendige forutsetninger for å bruke Appium Server, og den leveres med en inspektør for å avdekke grunnleggende informasjon om appene dine og en opptaker for å generere standardkode som automatiserer mobilapplikasjoner.
Trinn 1) Gå til http://appium.io/ og klikk på Last ned Appium.
Trinn 2) Til Windows, velg .exe-filen og last den ned. Filen er på rundt 162 MB og vil ta tid å laste ned basert på internetthastigheten din.
Trinn 3) Klikk på den nedlastede .exe-filen.
Trinn 4) På en Windows maskin, det finnes ingen installasjonsveiviser – Appium kjører direkte fra .exe-filen. Etter at du klikker på .exe-filen, vises følgende splash i noen minutter.
Til macOS, må du installere .dmg-filen.
Trinn 5) Serverstartvinduet åpnes. Det fyller ut standardverten og porten (som du kan endre) og viser Appium versjon i bruk.
Trinn 6) Klikk Start serverEn ny server startes på den angitte verten og porten, og serverloggen vises i konsollen.
Trinn 7) Klikk Nytt øktvindu.
Trinn 8) Skriv inn de ønskede funksjonene og start en økt.
Appium Inspektør
Ligner på Selenium IDE-opptaks- og avspillingsverktøy, Appium har en Inspektør for opptak og avspilling av tester. Den registrerer og spiller av innebygd applikasjonsoppførsel ved å inspisere DOM og genererer testskript på alle støttede språk. Merk at Appium Inspektør støttes ikke på Microsoft Windows: på Windows den lanserer Appium Server, men klarer ikke å inspisere elementer. UIAutomator Viewer er anbefalt reserve for å inspisere elementer på Windows.
Fremgangsmåte for å starte Appium Inspektør på en Mac-maskin:
Trinn 1) Last ned og start din Appium serveren som bruker standard IP-adresse 0.0.0.0 og port 4725.
- Velg kildefilen eller .app-filen fra den lokale stasjonen for testing.
- Merk av i avmerkingsboksen «App-bane» for å aktivere «Velg»-knappen.
Trinn 2) Klikk på «Velg»-knappen for å bla til og velge testfilen fra den lokale stasjonen.
Trinn 3) Start iOS-simulatoren på Mac-maskinen.
Trinn 4) Klikk på Start knappen øverst til høyre. Dette aktiverer et blått ikon – klikk på ikonet for å åpne Appium Inspektør og simulatoren med den forhåndsvalgte applikasjonen.
Trinn 5) Når den er lansert, Appium Inspektøren viser elementhierarkiet i en kolonnevis struktur. Brukeren kan også bruke handlinger som trykk, sveip og lignende bevegelser.
Trinn 6) Klikk Stopp for å avslutte innspillingen.
Legg ved en Android Emulator til Appium
Trinn 1) Install Android SDK-en på systemet ditt.
Åpne Kontrollpanel > System og sikkerhet > System. Klikk på i venstre panel. Advanced SysteminnstillingerI hurtigmenyen Systemegenskaper klikker du på Avansert kategorien og deretter Miljøvariabler.
Trinn 2) Fra hurtigmenyen Miljøvariabler dobbeltklikker du på Sti og sett ANDROID_HOME variabelen skal peke til SDK-katalogen din. Legg til hele SDK-mappebanen. For eksempel:
C:\User\ABC\Desktop\adt-bundled-windows-x86_64-20140321\sdk
Trinn 3) Start en Android emulator, eller legg til en Android enheten til systemet ditt. Sørg for at USB-feilsøking er aktivert på Android enhet: gå til Enhetsinnstillinger > Utvikleralternativer > aktiver «USB-feilsøking».
Trinn 4) Åpne ledeteksten og naviger til Android SDK-er \platform-tools\ katalog (for eksempel D:\adt-bundle-windows-x86_64-20130514\sdk\platform-tools).
Trinn 5) Kjør adb devices kommando. Den tilkoblede enheten din vil vises i ledetekstvinduet. Hele skjemaet er: adb -s emulator-5554 install <Location of .apk file>.
Trinn 6) Kjør adb start-server kommando. ADB-serveren starter, og Appium vil bruke den til å sende kommandoer til din Android enhet.
Trinn 7) Naviger til Appium katalogen på systemet ditt og start Appium ved å klikke på Appium.exe-fil.
Trinn 8) Ikke endre standard IP-adresse eller portnummer. Klikk. Start. Din Appium Konsollen starter på 127.0.0.1:4723 som vist nedenfor.
Trinn 9) Klikk Start. De Appium Serveren kjører nå på systemet ditt.
Appium Testtilfelle for en innfødt Android App (kalkulator)
Trinn 1) Last ned ADT-filen Eclipse plugin eller hent ADT-pakken separat fra her..
Trinn 2) Open Eclipse og opprett et nytt Prosjekt > Pakke > Klasse.
Trinn 3) Importer Selenium bibliotek og TestNG inn i det nye prosjektet.
Trinn 4) Lag et lite testprogram for Kalkulator.app som summerer to tall.
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();
}
}
Start Appium Serveren og Android Emulatoren fra AVD Manager, og klikk deretter på Kjør > TestNGProgrammet kjører Calculator.app på den valgte emulatoren, og resultatet vises i Eclipse konsollen ved hjelp av TestNG rammeverk.
Begrensninger av Appium
- Appium støtter ikke testing på Android versjoner lavere enn 4.2.
- Begrenset støtte for testing av hybridapper – det er for eksempel ikke mulig å teste byttehandlingen mellom en nettvisning og en innebygd visning i noen av retningene.
- Ingen støtte for løping Appium Inspektør på Microsoft Windows.
Vanlige feil og feilsøkingstrinn i Appium
| Feil | Trinn for feilsøking |
|---|---|
| feil: Følgende ønskede funksjoner er nødvendige, men ble ikke oppgitt: enhetsnavn, plattformnavn | Legg til de ønskede egenskapene deviceName og platformName til Appium skript. For eksempel: capabilities.setCapability("deviceName", "Emulator"); og capabilities.setCapability("platformName", "Android"); |
| feil: Kunne ikke finne adb. Vennligst still inn ANDROID_HOME miljøvariabelen med Android SDK-rotkatalogbane. | Angi SDK-rotkatalogen i systemets miljøvariabler under baneoppføringen. |
| feil: org.openqa.selenium.SessionNotCreatedException: Kunne ikke opprette en ny økt. | Angi riktig appbane og start datamaskinen på nytt Appium server. |
| Hvordan finne et DOM-element eller XPath i en mobilapplikasjon? | Bruk UIAutomator Viewer til å inspisere DOM-elementer for Android applikasjoner. |















