Leestijd: 4 minuten
In de vorige blog hebben we gezien hoe we Appium op ons lokale systeem kunnen installeren. In deze blog zullen we zien hoe we Appium inspector kunnen gebruiken en hoe we verschillende soorten elementen kunnen vinden. Dus laten we eerst eens kijken waarom we Appium inspector nodig?
Waarom Appium Inspector?
Het testen van een mobiele applicatie en een webapplicatie is verschillend van elkaar. Het belangrijkste verschil is de locator strategie die we gebruiken om de elementen van de applicatie te identificeren. Voor het vinden van de elementen op een webapplicatie kunnen we gebruik maken van de element inspector van de webbrowser. Maar als we het hebben over de mobiele applicatie hebben we geen element inspector beschikbaar. Hiervoor kunnen we de Appium inspector gebruiken voor het lokaliseren van de elementen in de applicatie.
Appium Inspector
Appium inspector is een ingebouwde functie van Appium die verschillende soorten elementen in onze mobiele en webapplicatie identificeert. Zoals we allemaal weten dat wanneer we proberen om een applicatie te automatiseren op mobiel of web, moeten we in staat zijn om elk element van de applicatie uniek te identificeren. Om dat te doen moeten we een aantal attributen of informatie over het element dat we nodig hebben om te interageren met te achterhalen.
Appium inspector maakt gebruik van emulatoren en real-world apparaten ook. Het spiegelt gewoon het scherm van het apparaat en we kunnen interactie met het en krijgen de details van de elementen. Er zijn verschillende manieren om elementen in mobiele toepassingen uniek te identificeren.
Element locator-strategie in Appium
Met behulp van de element locator kunnen we het adres van een UI-element in een toepassing vinden. Aangezien het heel gebruikelijk is om meerdere elementen van hetzelfde type op het scherm te hebben, is het mogelijk dat twee of meer elementen hetzelfde adres hebben. Dus, het vinden van sommige elementen kan vrij eenvoudig zijn, maar voor sommige hebben we misschien wat extra inspanning nodig.
ID
Het vinden van elementen op ID is het eenvoudigst van allemaal. Elk element heeft een ID die kan worden gebruikt om het te identificeren en er ook mee te communiceren. In Android gebruiken we resource-id en in iOS naam of label.
dr.findElement(By.id("android:id/text1")).click();
Accessibility ID
Dit wordt beschouwd als de beste elementzoeker als u werkt voor zowel iOS- als Android-toepassingen. Accessibility ID is platformoverschrijdend en kan zowel in Android- als iOS-applicaties worden gebruikt of geopend. Dit maakt onze code herbruikbaar.
dr.findElementByAccessibilityId("Accessibility").click();
Klassenaam
Het vinden van een element aan de hand van de klassenaam is niet erg betrouwbaar. Veel elementen kunnen dezelfde klassenaam hebben en ze kunnen niet worden geïdentificeerd door alleen het klassenaam-attribuut van het element te gebruiken. We kunnen dus een combinatie van meerdere attributen gebruiken, zoals het combineren van tekst met de klassenaam, en zo het element vinden.
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
Deze locator-strategie werkt op de XML-structuur van de applicatie. Het identificeert de elementen met behulp van de locaties van andere elementen op de pagina. Het is een van de meest onbetrouwbare element locator, omdat als de positie van een element op de webpagina verandert, het xpath van het element ook verandert.
dr.findElementByXPath("//android.widget.TextView").click();
Starten van de Appium Inspector
Laten we eerst eens kijken hoe we de Appium inspector kunnen starten. Om de Appium-inspector te kunnen gebruiken, moeten we Appium installeren.
- Lanceer Appium en start de server.
- Definieer de gewenste mogelijkheden en start een nieuwe Appium-sessie.
- De interface van de Appium-inspector wordt nu geopend en we kunnen de toepassing zien die in ons venster is geopend.
Dit was een kleine inleiding tot het vinden van elementen met behulp van Appium. In de volgende blog zullen we verschillende technieken bekijken om elementen te vinden in Appium.