Met Appium Inspector leren we hoe element Android te inspecteren en hoe het element op de iPhone te inspecteren In dit Appium-zelfstudie. Appium biedt de mogelijkheid om elementen zowel in android en iOS.
Hoe element op iPhone te inspecteren met Appium Inspector
Stap 1 →IOS-simulator openen
In deze tutorial, voor alle voorbeelden die we hebben behandeld met de iOS-simulator. Volg het onderstaande proces om de iOS-simulator te openen:
Stap 2 →"Udid" krijgen.
Om de Appium-inspecteur met de Simulator te verbinden, hebben we udid nodig. Om het
opgestart udid, voer het onderstaande commando uit
- xcrun simctl lijst | egrep '(opgestart)'
het zal het apparaat-ID en de naam van de onlangs opgestarte simulator vermelden
Stap 3 → OS-versie ophalen
Nu hebben we de OS-versie van de Simulator nodig. Voer de onderstaande opdracht uit om de OS-versie te krijgen
- instrumenten -s devices | grep "iPhone SE" [vervang de apparaatnaam door de apparaatnaam die je van bovenstaande opdracht hebt gekregen]
Stap 4 → Appium Inspector openen
Nu hebben we de apparaat-id en os-versie bij ons. Klik op de knop die in de onderstaande afbeelding is gemarkeerd. Het opent de nieuwe inspecteur.
Stap 5 → Appium Inspector verbinden met Simulator
Voeg nu alle . toe gewenste mogelijkheden nodig om de sessie te starten. Volg de onderstaande afbeelding voor de vereiste gewenste mogelijkheden en start de sessie.
Als u wilt verifiëren met een specifieke app, kunt u een app-pad toevoegen. In deze tutorial heeft W gewerkt met de bestaande “Contact” -app in de Simulator.
Stap 6 → Het standaardscherm ophalen.
Zodra de sessie is gestart, kunt u de afbeelding van het startscherm van de simulator en de XML-hiërarchie zien. Bekijk de onderstaande afbeelding voor meer details.
Stap 7 →Inspecteer en klik op het contact.
Klik nu op de contactknop van de simulator om het inspectiescherm weer te geven en klik op vernieuwen. U kunt ook het Xpath van de contactpersoon vinden en op Tap klikken. Zie onderstaande afbeelding.
Stap 8 → Hoe begin ik met opnemen?
Nadat we op Contacten hebben geklikt, zien we de onderstaande afbeelding. Klik nu op "Opname starten" om alle acties vast te leggen. Het zal helpen om de Appium-scripts in de gewenste taal te genereren.
Stap 9 →Inspecteer het element en klik op tap.
Volg het gemarkeerde gedeelte in de onderstaande afbeelding. Zoek eerst het XPath van de knop "Toevoegen" en klik daarna op de knop Tap.
Stap 10 →Sleutels verzenden.
Nadat u op de knop Toevoegen hebt getikt, verschijnt het onderstaande scherm. Volg het gemarkeerde gedeelte om de waarde van de Appium Inspector zelf te verzenden.
Stap 11 →Hallo typen.
Schrijf een waarde om de waarde voor 'Voornaam' bij te werken en klik op 'Sleutels verzenden'.
Stap 12 →Waarde weerspiegeld in zowel de app.
De waarde wordt op beide plaatsen weergegeven, zoals in de onderstaande afbeelding. Appium inspecteur
evenals Simulator
Stap 13 →code genereren.
Klik nu op de onderstaande link in de afbeelding. Het genereert automatiseringsscripts in de voorkeurstaal. Hier is de taal geselecteerd als Python. U kunt dit zien in de onderstaande afbeelding.
Stap 14 →Voorbeeldcode.
Hieronder staan de voorbeeldscripts die door de Appium-inspecteur zijn gegenereerd. Hier is de taal gekozen als Java-Junit. io.appium.java_client.MobileElement importeren; io.appium.java_client.ios.IOSDriver importeren; importeer junit.framework.TestCase; import org.junit.Na; import org.junit.Voor; import org.junit.Test; import java.net.MalformedURLE Exception; java.net.URL importeren; import org.openqa.selenium. afstandsbediening.Gewenste Mogelijkheden; openbare klasse SampleTest { privé IOSDriver-stuurprogramma; @Before public void setUp() genereert MalformedURLException { DesiredCapabilities requiredCapabilities = new DesiredCapabilities(); gewensteCapabilities .setCapability("platformnaam", "iOS"); gewensteCapabilities .setCapability("platformVersion", "13.6"); gewensteCapabilities .setCapability("deviceName", "iPhone SE"); gewensteCapabilities .setCapability("automationName", "XCUITest"); gewensteCapabilities .setCapability("udid", "B5FDD9EB-05C6-4F3B-9DFE-1A4EC3E06A7F"); URL remoteUrl = nieuwe URL ("http://localhost:4723/wd/hub"); driver = nieuwe IOSDriver (remoteUrl, gewenste capaciteiten); } @Test public void sampleTest() { MobileElement el1 = (MobileElement) driver .findElementByAccessibilityId ("Contacten"); el1.klik(); MobileElement el2 = (MobileElement) stuurprogramma .findElementByAccessibilityId("Toevoegen"); el2.klik(); MobileElement el3 = (MobileElement) stuurprogramma .findElementByAccessibilityId("Voornaam"); el3.sendKeys("Hallo"); } @After public void tearDown() { driver.quit(); } }
Problemen bij het openen van de Appium Inspector in Mac.
Hoe los je problemen op als 'Interne fout opgetreden bij het uitvoeren van de opdracht: Fout: onbekend apparaat of simulator-UDID?'
U moet "libimobiledevice" installeren. Gebruik het commando → brew install libimobiledevice --HEAD.
Hoe gaat u het oplossen als u het probleem "WebDriverAgent vanwege xcodebuild-fout: niet gevonden: carthage" krijgt?
U moet de carthage installeren. Gebruik het commando → brew install carthage.
Hoe element op Android te inspecteren met Appium Inspector
Stap 1 → Emulator openen
In deze zelfstudie, voor alle voorbeelden die we hebben behandeld met de Android-emulator. Volg het onderstaande proces om de Android-emulator te openen:
Stap 2 → De Appium-inspecteur openen.
Nu hebben we de apparaat-id en os-versie bij ons. Klik op de knop die in de onderstaande afbeelding is gemarkeerd. Het opent de nieuwe inspecteur.
Stap 3 → Appium Inspector verbinden met Simulator
Voeg nu alle gewenste mogelijkheden toe die nodig zijn om de sessie te starten. Volg de onderstaande afbeelding voor de gewenste gewenste mogelijkheden en start de sessie.
Als u wilt verifiëren met een specifieke app, kunt u een app-pad toevoegen. In deze tutorial hebben we gewerkt met de bestaande "Contact" -app in de emulator.
Stap 4 → Startscherm openen
Zodra de sessie is gestart, kunt u de afbeelding van het startscherm van de emulator en de XML-hiërarchie zien. Raadpleeg de onderstaande afbeelding voor details.
Stap 5 →Inspecteer het element en begin met opnemen.
Klik nu op de contactknop van de emulator. Zie de onderstaande afbeelding voor meer details.
Stap 6 →Klik op de knop Toevoegen
Nadat we op Contacten hebben geklikt, zien we de onderstaande afbeelding (hier hebben we het favoriete tabblad gekozen en de pagina vernieuwd vanuit de inspecteur). Klik nu op "Beginnen met opnemen" om alle acties vast te leggen. Het zal helpen om de Appium-scripts in de gewenste taal te genereren. Klik op de hieronder gemarkeerde tap-knop.
Stap 7 → Klikken op sleutels verzenden.
Nadat u op de knop Toevoegen hebt getikt, verschijnt het onderstaande scherm. Volg het gemarkeerde deel om de waarde van de Appium inspecteur zelf.
Stap 8 →Hallo typen
Schrijf een waarde om de “Voornaam” waarde bij te werken en klik op "Stuur sleutels."
Stap 9 →Code genereren
De waarde wordt weergegeven in het invoervak, zoals in de onderstaande afbeelding. Appium inspecteur,
evenals een emulator. Om de code te genereren, klikt u op de gemarkeerde pijl.
Stap 10 → Voorbeeldcode
Het zal onderstaande scripts genereren: import io.appium.java_client.MobileElement; importeer io.appium.java_client .android.AndroidDriver; importeer junit.framework.TestCase; import org.junit.Na; import org.junit.Voor; import org.junit.Test; import java.net.MalformedURLE Exception; java.net.URL importeren; import org.openqa.selenium .remote.DesiredCapabilities; openbare klasse SampleTest { privé AndroidDriver-stuurprogramma; @Before public void setUp() genereert MalformedURLException { DesiredCapabilities requiredCapabilities = new DesiredCapabilities(); gewensteCapabilities .setCapability("platformName", "Android"); gewensteCapabilities .setCapability("platformVersion", "23"); gewensteCapabilities .setCapability("deviceName", "Nexus 5X"); gewensteCapabilities .setCapability("automationName", "UIAutomator2"); gewensteCapabilities .setCapability("udid", "emulator-5554"); gewensteCapabilities .setCapability ("ensureWebviewsHavePages", true); URL remoteUrl = nieuwe URL ("http://localhost:4723/wd/hub"); driver = nieuwe AndroidDriver (remoteUrl, gewenste capaciteiten); } @Test public void sampleTest() { MobileElement el1 = (MobileElement) driver .findElementByAccessibilityId ("Contacten"); el1.klik(); MobileElement el2 = (MobileElement) stuurprogramma .findElementById ("com.android.contacts:"+ "id/contact_tile_list"); el2.klik(); MobileElement el3 = (MobileElement) driver.findElementByAccessibilityId ("nieuwe contactpersoon toevoegen"); el3.klik(); MobileElement el4 = (MobileElement) stuurprogramma .findElementByXPath("/hierarchy+ "/android"+ ".widget." + "FrameLayout/android"+ ".view.ViewGroup/android.widget" + ".FrameLayout[2]/android. widget"+ ".FrameLayout/android.widget" + ".ScrollView/android.widget"+ ".LinearLayout/android.widget" + ".LinearLayout[2]/android"+ ".widget.LinearLayout/android .widget" + ".LinearLayout/android.widget" ".LinearLayout/android"+ ".widget.EditText") .sendKeys("Hallo"); el4.sendKeys("Hallo"); } @After public void tearDown() { driver .ontslag nemen(); } }
Let op:
Conclusie
Tot nu toe hebben we besproken hoe te inspecteer element android en hoe element op iPhone te inspecteren. In het volgende onderwerp zullen we erover schrijven hoe je het eerste script schrijft in Appium. Om het onderwerp vanaf het begin te beginnen, alstublieft klik hier. Raadpleeg dit voor meer informatie over deze sectie link.
Hallo, ik ben Himadri Das, ik ben een blogger en een open source-bijdrager. Ik heb ongeveer 11 jaar ervaring in het informatietechnologiedomein. Momenteel werk ik bij een startend bedrijf als Quality Assurance Manager. Ik heb hands-on ervaring met Appium, Selenium, QTP, Locust, Automation framework, Performance Testing, Functional Testing, Java, python, Shell scripting, MySql, Redis, Kafka etc. Naast mijn werk en het schrijven van blogs, speel ik graag gitaar, hou van reizen en kijk graag naar cricket en voetbal. Als je meer over mij wilt weten, bezoek dan mijn linkedin profiel.