51 Appium-Interviewfragen (die meisten Anfänger wissen es nicht!)

In diesem Tutorial werden wir die 50 wichtigsten Fragen und Antworten zu Appium-Interviews diskutieren. Es wird Ihnen helfen, sich auf das Interview vorzubereiten und es zu knacken.

Wir werden die Fragen und Antworten in drei Teile teilen:

Grundlegende Fragen zum Appium-Interview

Was ist Appium?

Ans: Appium ist ein Open-Source-Testframework für frei verteilte mobile Benutzeroberflächen.

Welche Arten von Anwendungen können wir mit Appium automatisieren?

Ans: Appium unterstützt native Anwendungen, Hybridanwendungen und Webansichten.

Appium-Fähigkeiten auflisten?

Ans: Für diese Antwort beziehen Sie sich bitte darauf Link.

Auflisten der Voraussetzungen für die Verwendung von Appium?

Ans: Wir benötigen die folgenden Tools / JAR / Plugins, um mit Appium arbeiten zu können

  1. JDK
  2. ANDROID Studio
  3. IntelliJ / Eclipse
  4. TestNG-Plugin oder Abhängigkeit, wenn Sie Maven verwenden
  5. Appium Java Client

Erwähnen Sie die Nachteile oder Einschränkungen von Appium?

Ans: Wie jedes Tool hat auch Appium bestimmte Einschränkungen. Bitte überprüfen Sie die Antwort hier.

Was sind die nativen Apps?

Ans: Bitte überprüfen Sie die Antwort von hier.

Was sind Hybrid-Apps?

Ans: Bitte überprüfen Sie die Antwort von hier

Was verstehen Sie unter M-Web oder Mobile Web Apps?

Ans: Bitte überprüfen Sie die Antwort von hier.

Was sind die unterstützten Sprachen in Appium?

Ans: Mit Appium können Kunden basierend auf Sitzungen mit Appium interagieren. Clients senden Sitzungsanforderungen als POST-Form und übergeben die gewünschten Funktionen als Parameter. Es gibt mehrere Kunden wie Java, JavaScript, PHP, Ruby, Python und C #.

Erwähnen Sie die Vorteile von Appium.

Ans: Die Antwort ist dieselbe wie bei Frage 3. Sie finden die Antwort hier

Das von Appium unterstützte Automation and Unit Test Framework auflisten?

Ans: Wir können alle Arten von Testframeworks mit Appium verwenden. Beispiel: Java-Einheit, java TestNG, NUnit etc als Unit Test Framework . Appium test implementiert die Selenium WebDriver um mit Android- oder iOS-Geräten zu interagieren.

Erwähnen Sie die Einschränkungen oder Nachteile von Appium?

Ans: Die Antwort ist dieselbe wie bei Frage 5. Sie finden die Antwort hier

Wie können Sie Elemente in der iOS-App überprüfen?

Ans: Für die iOS-App können wir die Elemente mit Appium Inspector überprüfen. Es ist ein hervorragendes Tool zum Identifizieren der ID, des XPaths usw. der Elemente. Es kann auch zur Ausführung von Benutzeraktionen ausgeführt werden.

Was ist der Appium-Inspektor?

Ans: Appium Inspector wird verwendet, um DOM zu überprüfen, um die Elemente sowohl in Android als auch in iOS herauszufinden. Wir können die Aktionen, die wir ausführen, im Inspektor aufzeichnen. Es kann die Skripte in verschiedenen Sprachen wie Java / JUnit, Python usw. generieren. Eine vollständige Anleitung zum Appium Inspector finden Sie unter Klicken Sie hier.

Wie überprüfe ich das DOM-Element oder XPath auf mobile Anwendungen?

Ans: Sie können das DOM-Element oder XPath auf verschiedene Arten finden. Entweder können Sie "UIAuteviewer / UIAutomateviewer2" verwenden, oder Sie können Appium Inspector für Android verwenden. Für iOS können Sie Appium Inspector verwenden. Informationen zum Prüfen von Elementen finden Sie hier Link.

Was ist der Unterschied zwischen Simulator und Emulator?

Ans: Emulator und Simulator sind beide visuelle Geräte. Der Emulator ist ein virtuelles Gerät für Android, und der Simulator ist ein virtuelles Gerät für iOS, das von Xcode aus gestartet wird.

Wie viel Zeit benötigt Appium, um einen Test zu automatisieren?

Ans: Dies hängt von dem Szenario ab, das Sie testen. Wenn Sie mehrere Flows in einer einzigen Methode überprüfen, dauert es wahrscheinlich länger. Es ist jedoch immer besser, die Testfälle präzise und unkompliziert zu gestalten, damit Sie den Wiederherstellungsmechanismus nutzen können, wenn zwischen Ihrer Ausführung ein Problem auftritt.

Wann sollten wir Appium verwenden?

Ans: Appium unterstützt native, mobile Web-Apps und Hybrid-Apps. Es unterstützt plattformübergreifende Tests. Wenn Sie mit Android oder iOS arbeiten und dies überprüfen möchten, können Sie Appium verwenden.

Was ist der beste Ansatz beim Testen auf realen Geräten oder Emulatoren / Simulatoren?

Ans: Dies hängt wiederum von Ihren Testszenarien und dem Anwendungsverhalten ab. Wenn es sich um eine einfache Anwendung handelt, können Sie sowohl auf realen Geräten als auch auf Simulatoren / Emulatoren testen. Wenn Ihre Anwendung jedoch über eine komplexe Logik verfügt, ist es immer besser, sich für echte Geräte zu entscheiden. Im Allgemeinen sollten wir diese zur Automatisierung verwenden, da letztendlich der Endbenutzer diese Anwendungen verwenden wird. Echte Geräte haben auch Probleme, wenn sie längere Zeit eine Verbindung zum Computer herstellen. ADB-Verbindungen gehen verloren und es werden Geräte angezeigt, die nicht angeschlossen sind, wodurch Ihre Testfälle fehlschlagen.

Wie identifiziere ich M-Web- oder Mobile Browser-Objekte mit Appium?

Ans: Mit UserAgent können Objekte in einem M-Web- oder mobilen Browser identifiziert werden. Sie können den Browser mithilfe eines mobilen Proxys ändern, um das Problem zu beheben.
Oder wir können ChromeCasting zur Objektidentifizierung in einem mobilen Browser verwenden. Mit Chromecast kann die Verbindung zwischen Ihrem Mobiltelefon und dem System hergestellt werden, und anschließend können Sie Elemente auf dem Mobiltelefon über das Chromgusssystem überprüfen.

Welcher Ansatz ist zu wählen, um das eindeutige Objekt in Appium zu identifizieren, während derselbe Klassenname mehrere Objekte enthält?

Ans: Driver.findElements(By.className) gibt die Listen der Elemente an. Sobald wir die Listen erhalten haben, müssen wir die Indizes durchlaufen, um die Elemente mit demselben Klassennamen eindeutig zu behandeln.

Vergleich zwischen Appium und Selen durchführen?

Ans: Wie wir wissen, ist Selenium ein Open-Source-Tool. Es hilft, Webanwendungen zu automatisieren. Andererseits ist Appium auch ein Open-Source-Tool. Es dient zur Automatisierung mobiler Anwendungen (Native, Hybrid, Web-Apps). Appium implementiert Selenium Webdriver, um mit den Geräten zu interagieren.

Wie verstecke ich die Tastatur in Appium?

wie man die Tastatur versteckt
Fragen zum Appium-Interview: So verstecken Sie die Tastatur

Welche gewünschten Funktionen sind für Android erforderlich?

gewünschte Fähigkeiten für Android
Appium Interview Fragen: gewünschte Fähigkeiten für Android

Was sind die erforderlichen gewünschten Funktionen für iOS?

gewünschte Funktionen für iOS
Fragen zum Appium-Interview: gewünschte Funktionen für iOS

Intermediate Appium Interview Fragen

Was ist Datenaustausch, wenn Sie auf Mobilgeräten testen?

Ans: Der Datenaustausch in Appium tauscht die von komplexen Objekten gehosteten Daten aus, die tatsächlich in verschiedenen Komponenten einer auf der Webansicht basierenden App gespeichert sind. Ein Beispiel kann das Fensterobjekt sein.

Was sind die Fehler, mit denen Sie in Appium konfrontiert sind?

Ans:

  • "Die folgenden gewünschten Funktionen werden benötigt, aber nicht bereitgestellt: Gerätename, platformNameError."
  • “Adb konnte nicht gefunden werden. Bitte setzen Sie die Umgebungsvariable ANDROID_HOME mit dem Android SDK-Stammverzeichnis pathError. “
  • "Openqa.selenium.SessionNotCreatedException: Eine neue Sitzung konnte nicht erstellt werden. Fehler."

Was sind die Bedingungen, um Appium-Tests zu schreiben?

Zu Schreiben Sie einen Appium-Test, müssen wir die folgenden Punkte beachten:

Appium-Client: Dies ist ein Appium-Client, der in einer anderen Sprache geschrieben ist und eine Verbindung zum Appium-Server herstellt. Zum Beispiel Appium Java Client. 

Appium-Sitzung: Appium interagiert mit mobilen Geräten basierend auf Sitzungen. Wir müssen eine Sitzung mit Hilfe des Appium-Clients erstellen. 

Gewünschte Funktionen: Gewünschte Funktionen sind wie Parameter, die wir beim Erstellen der Sitzung übergeben. Es hilft dem Appium-Server, die Geräte eindeutig zu identifizieren.

Treiberbefehl: Der Treiberbefehl ist nichts anderes als die Benutzeraktionen, die wir in Geräten ausführen. Zum Beispiel klicken Sie auf () oder sendKeys ().

Wie können Sie Elemente in der Android Native-Anwendung überprüfen?

Ans: Sie können "UIAuteviewer / UIAutomateviewer2" oder Appium Inspector für Android verwenden.

Wie scrolle ich in einer App nach unten?

wie man nach unten scrollt
Appium Interview Fragen: wie man nach unten scrollt

Ist es möglich, den Appium-Server programmgesteuert zu starten?

Ans: Ja, wir können die Appium-Serversitzung programmgesteuert initiieren. Da Appium node.js verwendet, können wir eine .bat-Datei (für Windows) oder eine Shell-Datei / einen Shell-Befehl (Linux / Mac) erstellen, um den Appium-Server über Bootstrap-Port, Hub-IP und Port zu starten.

Wie wische ich in Appium nach links?

wie man nach links wischt
Fragen zum Appium-Interview: Wie man nach links wischt

Wie wische ich in Appium nach rechts?

wie man nach rechts wischt
Fragen zum Appium-Interview: Wie man nach rechts wischt

Ist es möglich, in Appium einen Parallel- / Multithread-Test durchzuführen?

Ans: Ja, wir können Tests in der Multithread-Umgebung ausführen. Voraussetzung ist jedoch, dass nicht derselbe Appium-Server zum Parallelisieren der beiden Tests verwendet wird.

Erwähnen Sie den Parallel Testing-Ansatz in IOS mit Appium?

Ans: Appium hat die Option gegeben, iOS-Tests ab Xcode Version 9 und höher parallel auszuführen. Es gibt einige Voraussetzungen, denen wir folgen müssen.

  1. "UDID" sollte eindeutig sein.
  2. "WdaLocalPort" sollte eindeutig sein
  3. Der derivatedDataPath-Stamm sollte für jede Treiberinstanz eindeutig sein. 
  4. Sauce Labs bietet die Möglichkeit, iOS-Tests parallel auszuführen. Wir müssen unseren Appium-Test in Saucenlabors hochladen. Danach wird es in mehreren iOS-Tests parallel ausgeführt.

Wie wische ich in Appium nach oben?

wie man nach oben wischt
Fragen zum Appium-Interview: Wie man nach oben wischt

Wie wische ich in Appium nach unten?

wie man nach unten wischt
Fragen zum Appium-Interview: Wie man nach unten wischt

Fragen zum Advanced Appium-Interview

Was sind die Selenbefehle, die mit Appium funktionieren?

Ans: Appium implementiert Selenium WebDriver. Deshalb sind fast alle WebDriver Befehle funktionieren mit Appium. Im Folgenden seien einige Beispiele genannt:

  • Klicken() Befehl zum Klicken / Tippen auf die Schaltfläche / Links.
  • sendKeys () Befehl zum Senden des Wertes.
  • Es unterstützt Java-Skript-Befehle.
  • Behandelt Warnungen.
  • Es kann zwischen dem Kontext in Webansichten wechseln.

Was sind die Vorteile von Real-Geräten gegenüber Emulator / Simulator?

 Die Verwendung realer Geräte gegenüber Emulator / Simulator bietet einige Vorteile

  1. Wir können Szenarien mit niedrigem Batteriestand mit realen Geräten überprüfen.
  2. Wie schnell der Akku während des Tests entladen wird.
  3. Wir können die tatsächliche Leistung der Geräte überprüfen und App-Profile erstellen.
  4. Wir können Bluetooth-bezogene Szenarien überprüfen.
  5. Wir können Nachrichten und Anrufe überprüfen.

Was sind die verschiedenen Tools zum Debuggen in Android und iPhone?

Ans: Wir überprüfen die Protokolle, um die auf den Geräten auftretenden Probleme zu beheben. Für Android können wir überprüfen Monitor, „adb logcat“ oder „dumpsys“ . Für das iPhone können wir verwenden iPhone-Konfigurationsdienstprogramm.

Wie können Sie zwischen Android-Anwendungen wechseln?

zwischen Android App wechseln
Appium Interview Fragen: Wechseln zwischen Android App

Wie können Sie zwischen iOS-Anwendungen wechseln?

wie man zwischen iOS App wechselt
Fragen zum Appium-Interview: Wechseln zwischen iOS-Apps

Wie können Sie die Bundle-ID in iOS finden?

  • Kopieren Sie die IPA-Datei auf Ihr System und ändern Sie die Erweiterung in die ZIP-Datei
  • Entpacken Sie nun den Ordner und suchen Sie nach der Datei iTunesMetadata.plist
  • Sobald Sie die Datei erhalten haben, öffnen Sie sie in einem Editor und suchen Sie nach softwareVersionBundleId. Sie erhalten die Bundle-ID.

Wie können Sie das WLAN aktivieren, während sich das Telefon im Flugzeugmodus befindet?

ConnectionStateBuilder-Verbindung = new ConnectionStateBuilder(); driver.setConnection (connection.withWiFiEnabled() .build());));

Wie können Sie die Unicode-Tastatur aktivieren?

Ans: Wir müssen unten die gewünschten Fähigkeiten hinzufügen:

gewünschteCapabilities.setCapability ("unicodeKeyboard", true);

Wie können Sie in Appium kopieren und einfügen?

Ans: Nun, es gibt keine direkte Methode, um dies zu tun. Sie können den Wert jedoch mit den Methoden getText () oder getAttributes () abrufen und denselben Wert an sendKeys () übergeben.

Umgang mit WebDriverAgentRunner-Runner.app ist ein Fehler aufgetreten (Fehler beim Installieren oder Starten des Testrunner-Problems?

rm '/usr/local/bin/carthage' 
brew install carthage 
brew link carthage

Möglicherweise gibt es andere mögliche Lösungen für dieses Problem. Sie können dies verweisen Link für andere Lösungen.

Wann wird der Automatisierungstest dem manuellen Test vorgezogen?

Ans: Automatisierungstests helfen beim Regressionstest. Wenn Sie komplexe Szenarien oder sich wiederholende Szenarien haben, sollten Sie diese automatisieren.

Wann wählen Sie manuelle Tests gegenüber Automatisierungstests?

Wenn Sie neue Anwendungen haben, sollten Sie diese zuerst manuell testen und dann wahrscheinlich automatisieren. Es gibt bestimmte Szenarien, in denen Sie anhand von Protokollen / Ereignissen überprüfen müssen. wir sollten diese manuell überprüfen. Szenarien, in denen wir keine häufigen Tests benötigen, sollten wir nicht automatisieren.

Wie funktioniert Appium?

  • Wir haben diesen Teil in unserem ersten Beitrag behandelt. Bitte sehen Sie die Antwort hier.

Wie doppelklicke ich in Appium?

Doppelklicken
Fragen zum Appium-Interview: Doppelklicken

Wie deinstalliere ich die App in Android?

App deinstallieren
Fragen zum Appium-Interview: So deinstallieren Sie die App

Wie lösche ich die App-Daten in Android?

App-Paket14
Fragen zum Appium-Interview: So löschen Sie die App-Daten

Wie werden Sie mit Fehlerfällen in Appium umgehen?

Ans: Das hängt von den Szenarien ab. Wenn Testfälle fehlschlagen, müssen wir den App-Status wiederherstellen, um die nächsten Testfälle auszuführen. Sie können dies entweder in @AfterMethod oder mithilfe von Listenern tun.

Wie können Sie Ihren Pass-Prozentsatz in Appium erhöhen?

Ans: Durch die Automatisierung der App mit Appium werden die Skripte manchmal inkonsistent. Wenn Sie die Testfälle länger ausführen oder auf Netzwerkprobleme zurückzuführen sind, kann das Problem der Inkonsistenz auftreten. Um das Skript robuster zu machen, können wir den folgenden Ansatz wählen.

Gibt es EventListener in Appium?

Ans: Ja, Sie können AppiumWebDriverEventListener verwenden. Sie müssen diese Schnittstelle implementieren.

Beispiel:

öffentliche Klasse AppiumListener implementiert AppiumWebDriverEventListener { public void beforeChangeValueOf(WebElement webElement, WebDriver webDriver) { } public void afterChangeValueOf(WebElement webElement, WebDriver webDriver) { } public void beforeAlertAccept(WebDriver webDriver) { } public void afterAlertAccept(WebDriver webDriver) { } public void afterAlertDismiss(WebDriver webDriver) { } public void beforeAlertDismiss(WebDriver webDriver) { } public void beforeNavigateTo(String s, WebDriver webDriver) { } public void afterNavigateTo(String s, WebDriver webDriver) { } public void beforeNavigateBack(WebDriver webDriver) { } public void afterNavigateBack(WebDriver webDriver) { } public void beforeNavigateForward(WebDriver webDriver) { } public void afterNavigateForward(WebDriver webDriver) { } public void beforeNavigateRefresh(WebDriver webDriver) { } public void afterNavigateRefresh(WebDriver webDriver) { } public void beforeFindBy(By by , WebElement webElement, WebDriver webDriver) { }public void afterFindBy(By by, WebElement webElement, WebDriver webDriver) { } public void beforeClickOn(WebElement webElement, WebDriver webDriver) { } public void afterClickOn(WebElement webElement, WebDriver webDriver) { } public void beforeChangeValueOf(WebElement webElement, WebDriver webDriver, CharSequence [] charSequences) { } public void afterChangeValueOf(WebElement webElement, WebDriver webDriver, CharSequence[] charSequences) { } public void beforeScript(String s, WebDriver webDriver) { } public void afterScript(String s, WebDriver webDriver) { } public void beforeSwitchToWindow (String s, WebDriver webDriver) { } public void afterSwitchToWindow(String s, WebDriver webDriver) { } /** * funktioniert, wenn in den Skripten eine Ausnahme gefunden wird * @param throwable * @param webDriver */ public void onException( Throwable Throwable, WebDriver webDriver) { System.out.println("Execute Exception"); } Öffentlichkeit void beforeGetScreenshotAs(OutputType Ausgabetyp) { } öffentlich void afterGetScreenshotAs(OutputType outputType, X x) { } public void beforeGetText(WebElement webElement, WebDriver webDriver) { } public void afterGetText(WebElement webElement, WebDriver webDriver, String s) { } }

Bis jetzt haben wir drei Arten von behandelt Fragen zum Appium-Interview. Diese sind Grundlegende Appium-Interviewfragen, Intermediate Appium-Interviewfragen und fortgeschrittene Appium-Interviewfragen. Dieses Tutorial hilft Ihnen, sich auf Appium-Interviewfragen vorzubereiten und gibt Ihnen das Vertrauen, diese zu knacken. Um auf Appium eingehend zu lernen, können Sie beziehen Sie sich darauf Link.

Referenz: Appium