Lästid: 4 minuter
I den föregående bloggen såg vi hur vi kan installera Appium på vårt lokala system. Så i den här bloggen ska vi se hur vi kan använda Appium inspector och hitta olika typer av element i dem. Så låt oss först se varför vi behöver Appium inspector?
Varför Appium Inspector?
Testning av en mobilapplikation och en webbapplikation skiljer sig från varandra. Den största skillnaden är lokaliseringsstrategin som vi använder för att identifiera applikationens element. För att hitta elementen i en webbapplikation kan vi använda elementinspektorn i webbläsaren. Men när vi talar om en mobilapplikation har vi ingen elementinspektör tillgänglig. Därför kan vi använda Appiums inspektör för att hitta elementen i applikationen.
Appium Inspector
Appium inspector är en inbyggd funktion i Appium som identifierar olika typer av element i vår mobil och webbapplikation. Som vi alla vet när vi försöker automatisera en applikation på mobilen eller webben bör vi kunna identifiera varje element i applikationen på ett unikt sätt. För att göra det måste vi ta reda på några attribut eller information om elementet som vi måste interagera med.
Appium inspector använder emulatorer och riktiga enheter också. Den speglar helt enkelt enhetens skärm och vi kan interagera med den och få information om elementen. Det finns olika sätt att unikt identifiera element i mobilapplikationer.
Element locator strategi i Appium
Med hjälp av element locator kan vi hitta adressen till ett UI-element i en applikation. Eftersom det är mycket vanligt att flera element av samma typ finns på skärmen är det möjligt att två eller flera element har samma adress. Så det kan vara ganska enkelt att hitta vissa element, men för vissa kan det krävas lite extra ansträngning.
ID
Att hitta element med hjälp av ID är det enklaste av allt. Varje element har ett ID som kan användas för att identifiera det och även för att interagera med det. I Android använder vi resource-id och i iOS använder vi namn eller etikett.
dr.findElement(By.id("android:id/text1")).click();
Accessibility ID
Detta anses vara den bästa elementlokalisatorn om du arbetar med både iOS- och Android-applikationer. Tillgänglighets-ID är plattformsoberoende och kan användas eller nås i både Android- och iOS-applikationer också. Detta gör vår kod återanvändbar.
dr.findElementByAccessibilityId("Accessibility").click();
Klassnamn
Att hitta ett element med hjälp av klassnamnet är inte särskilt tillförlitligt. Många element kan ha samma klassnamn och de kan inte identifieras bara genom att använda elementets klassnamnsattribut. Så vi kan använda en kombination av flera attribut, t.ex. kombinera text med klassnamnet tillsammans och hitta elementet.
List<WebElement> buttons = driver.findElementsByClassName("android.widget.TextView");for(WebElement button : buttons){ System.out.println(button.getText()); if(button.getText().equals("Animation")){ button.click(); }}
xpath
Denna lokaliseringsstrategi fungerar på XML-strukturen i programmet. Den identifierar elementen med hjälp av andra elementens placering på sidan. Det är en av de mest opålitliga lokaliseringsmetoderna för element, eftersom om positionen för ett element ändras på webbsidan ändras också elementets xpath.
dr.findElementByXPath("//android.widget.TextView").click();
Lansering av Appium Inspector
Låt oss först se hur vi kan starta Appium Inspector. För att kunna använda Appium inspector måste vi installera Appium.
- Lansera Appium och starta servern.
- Definiera de önskade funktionerna och starta en ny Appium-session.
- Appium inspector-gränssnittet öppnas nu och vi kan se applikationen som är öppnad i vårt fönster.
Detta var en liten introduktion till att hitta element med Appium. I nästa blogg kommer vi att se olika tekniker för att hitta element i Appium.