Appium Gewünschte Fähigkeiten für Android Emulator [Beispiel]

Dieses Tutorial hilft Ihnen, das Automatisierungstool APPIUM zu verstehen. Es behandelt die gewünschten Funktionen und die Verwendung von APPIUM mit Maven.

In diesem Tutorial lernen Sie-

Was sind gewünschte Fähigkeiten?

„Gewünschte Funktionen“ helfen uns, das Verhalten des Servers während der Automatisierung zu ändern. In Appium, es handelt sich um eine Art Hashmap oder Schlüssel-Wert-Paar, das zum Senden eines Befehls an den APPIUM-Server verwendet wird. In APPIUM werden alle Client-Befehle im Kontext einer Sitzung ausgeführt.

Beispielsweise hat ein Client eine POST-/Sitzungsanforderung mit einem JSON-Objekt an den APPIUM-Server gesendet.

Um eine gewünschte Anfrage zu senden oder eine gewünschte Sitzung mit dem Server aufrechtzuerhalten, wird daher ein Satz aus Schlüssel- und Wertepaaren verwendet. Dies ist bekannt als „Gewünschte Fähigkeiten.“

import io.appium.java_client.AppiumDriver;
import org.openqa.selenium.remote.DesiredCapabilities;
{
        DesiredCapabilities capabilities = new DesiredCapabilities();
        capabilities.setCapability("deviceName","Android Emulator");
        capabilities.setCapability("platformVersion", "4.4");
}

Wichtige Rolle der gewünschten Fähigkeit –

  • „DesiredCapabilities“ helfen dem Benutzer, die Sitzungsanfrage mit dem Server zu steuern. Wenn wir beispielsweise eine iOS-Sitzung wünschen, können wir Capability auf PlatformName = iOS festlegen. Oder wenn wir wollen Android Sitzung dann könnten wir Capability als PlatformName = festlegen Android.
  • „DesiredCapabilities“ werden zum Einrichten der Webdriver-Instanz verwendet, z. B.: FirefoxTreiber, ChromeDriver, InternetExplorerDriver usw.
  • DesiredCapability ist sehr nützlich für Selenium Raster. Beispiel: Es wird verwendet, um auf verschiedene Testfälle in verschiedenen Browsern und Betriebssystemen zuzugreifen. Basierend auf dem erwähnten DesiredCapability-Raster zeigt der Hub auf den entsprechenden Knoten. Hier werden diese Knoten mithilfe der Eigenschaftsmethode „set“ definiert, z. B.:
    DesiredCapabilities obj = new DesiredCapabilities(); 
    obj.setBrowserName("firefox"); 
    obj.setVersion("18.0.1"); 
    obj.setPlatform(org.openqa.selenium.Platform.WINDOWS);					
    
  • Eine gewünschte Fähigkeit ist ein durch eine Bibliothek definiertes Paket. Vor der Verwendung von „DesiredCapabilities“ sollte es aus der unten genannten Bibliothek importiert werden
    Org.openqa.selenium.remote.DesiredCapabilities

APPIUM unterstützt sowohl Android und iOS. Daher gibt es einen separaten Satz von Appium Serverfunktionen.

Die folgende Tabelle zeigt einige häufig verwendete Android Fähigkeiten und deren Nutzen

Unser Beschreibung Werte/Verwendungen
AppPaket Anruf erwünscht Java Paket in Android, das der Benutzer ausführen möchte Wert= com.example.myapp/

Obj.setCapability(„appPackage“, „com.whatsapp“);

AppAktivität Anwendungsaktivität, die der Benutzer über das Paket starten möchte. Wert= MainActivity, .Settings

Obj.setCapability(„appActivity“, „com.whatsapp.Main“);

appWaitPackage Paket, auf das die Anwendung warten muss Wert=com.example.android.myapp
appWaitActivity Jedes Android Aktivität, bei der der Benutzer Wartezeit benötigt Wert = SplashActivity

abilities.setCapability(“appWaitActivity”, “com.example.game.SplashActivity”)

HINWEIS– Siehe diesen Link 'https://appium.io/docs/en/2.0/', um mehr anzuzeigen Android Unser

Die folgende Tabelle zeigt einige häufig verwendete iOS-Funktionen und ihren Nutzen:

Unser Beschreibung Werte
LaunchTimeout Gesamtzeit (in ms), die auf die Instrumentierung gewartet wird. 2000
DU TATEST Zur Identifizierung einer eindeutigen Gerätenummer für angeschlossene physische Geräte 166aestu4

HINWEIS- Verweisen Sie auf diesen Link 'https://appium.io/docs/en/2.0/guides/caps/', um weitere iOS-Funktionen anzuzeigen

Extrahieren von Paket- und Aktivitätsinformationen

Pakete beziehen sich auf gebündelte Dateien oder Klassen. Sie geben der modularen Programmierung eine organisierte Struktur. In Java, verschiedene Pakete werden in einer einzigen Jar-Datei gespeichert. Der Benutzer kann die Jar-Datei zur vollständigen Ausführung einfach aufrufen. Ähnliche Konzepte werden in der Welt der Entwicklung mobiler Anwendungen verfolgt.

In Android Betriebssystem werden alle Anwendungen in Form von JAVA-Paketen installiert. Um Paketpfadinformationen zu extrahieren, Android Die PackageManager-Klasse wird verwendet.

Es ruft Paket- und Aktivitätsinformationen der vor und nach der Installation installierten Anwendung ab. Es ist eingebaut Android Geräte.

Sie können eine Instanz der PackageManager-Klasse erhalten, indem Sie getPackageManager() aufrufen.

Diese Methode kann auf die Pakete und die zugehörigen Berechtigungen der installierten Anwendungen zugreifen und diese bearbeiten.

Beispielsweise -

PackageManager pManager = getPackageManager();
List<ApplicationInfo> list = pManager.getInstalledApplications(PackageManager.GET_META_DATA)

Zusammenfassung

  • Die gewünschte Funktion wird immer auf einem Schlüssel-Wert-Paar ausgeführt, um einen Befehl an den APPIUM-Server zu senden.
  • Verwenden Sie die Klasse „PackageManager“, um Anwendungsinformationen zu extrahieren Android.