Pożądane możliwości Appium dla emulatora Androida (przykład)

Spisie treści:

Anonim

Ten samouczek pomoże ci zrozumieć narzędzie automatyzacji APPIUM. Obejmie pożądane możliwości i APPIUM z zastosowaniami Maven.

W tym samouczku nauczysz się:

  • Co to są pożądane możliwości?
  • Pobieranie informacji o pakietach i działaniach

Co to są pożądane możliwości

„Pożądane możliwości” pomagają nam modyfikować zachowanie serwera podczas automatyzacji. W Appium jest to rodzaj hashmap lub pary klucz-wartość, używanej do wysyłania polecenia do serwera APPIUM. W APPIUM wszystkie polecenia klienta działają w kontekście sesji.

Na przykład klient wysłał żądanie POST / sesyjne zawierające obiekt JSON do serwera APPIUM.

W związku z tym, aby wysłać dowolne żądane żądanie lub utrzymać dowolną sesję z serwerem, używany jest zestaw par klucza i wartości. Nazywa się to „pożądanymi możliwościami”.

import io.appium.java_client.AppiumDriver;import org.openqa.selenium.remote.DesiredCapabilities;{Możliwości DesiredCapabilities = new DesiredCapabilities ();możliwości.setCapability ("deviceName", "emulator Androida");możliwości.setCapability ("platformVersion", "4.4");}

Ważna rola pożądanej zdolności

  • „DesiredCapabilities” pomaga użytkownikowi kontrolować żądania sesji z serwerem. Na przykład - jeśli chcemy sesji iOS, możemy ustawić Capability jako PlatformName = iOS. Lub jeśli chcemy sesji Android, możemy ustawić Capability jako PlatformName = Android.
  • „DesiredCapabilities” służą do konfigurowania instancji Webdriver, np .: FirefoxDriver, ChromeDriver, InternetExplorerDriver itp.
  • DesiredCapability jest bardzo przydatne dla Selenium Grid. Np .: Służy do uzyskiwania dostępu do różnych przypadków testowych w innej przeglądarce i innym systemie operacyjnym. W oparciu o wspomnianą siatkę DesiredCapability Grid koncentrator wskaże odpowiedni węzeł. Tutaj te węzły są definiowane przy użyciu metody właściwości „set”, np .: -
    DesiredCapabilities obj = new DesiredCapabilities ();obj.setBrowserName ("firefox");obj.setVersion ("18.0.1");obj.setPlatform (org.openqa.selenium.Platform.WINDOWS);
  • Pożądaną możliwością jest pakiet zdefiniowany przez bibliotekę. Przed użyciem „DesiredCapabilities” należy go zaimportować z poniższej biblioteki
    Org.openqa.selenium.remote.DesiredCapabilities

APPIUM obsługuje zarówno system Android, jak i iOS. Dlatego istnieje oddzielny zestaw możliwości serwera Appium.

Poniższa tabela przedstawia niektóre powszechnie używane funkcje Androida i ich wartość w użyciu:

Możliwości Opis Wartości / zastosowania
appPackage Wywołaj żądany pakiet Java w systemie Android, który użytkownik chce uruchomić Wartość = com.example.myapp /
Obj.setCapability ("pakiet aplikacji", "com.whatsapp");
appActivity Działanie aplikacji, które użytkownik chce uruchomić z pakietu. Wartość = MainActivity, .Settings
Obj.setCapability ("appActivity", "com.whatsapp.Main");
appWaitPackage Pakiet, na który ma czekać aplikacja Wartość = com.example.android.myapp
appWaitActivity Każda aktywność na Androidzie, której użytkownik potrzebuje czasu oczekiwania Wartość =
możliwości SplashActivity.setCapability ("appWaitActivity", "com.example.game.SplashActivity")

UWAGA - Skorzystaj z tego linku „https://appium.io/docs/en/writing-running-appium/caps/#android-only”, aby wyświetlić więcej możliwości Androida

Poniższa tabela przedstawia niektóre powszechnie używane funkcje iOS i ich wartość w użyciu:

Możliwości Opis Wartości
LaunchTimeout Całkowity czas (w ms) oczekiwania na oprzyrządowanie. 2000
ZROBIŁEŚ Identyfikowanie unikalnego numeru urządzenia dla podłączonego urządzenia fizycznego 166aestu4

UWAGA - Skorzystaj z tego linku „http://appium.io/slate/en/master/?java#ios-only”, aby wyświetlić więcej możliwości iOS

Pobieranie informacji o pakietach i działaniach

Pakiety są powiązane z dołączonymi plikami lub klasami. Daje zorganizowaną strukturę programowaniu modułowemu. W Javie różne pakiety są przechowywane w jednym pliku Jar. Użytkownik może łatwo wywołać plik jar w celu pełnego wykonania. Podobne koncepcje pojawiły się w świecie tworzenia aplikacji mobilnych.

W systemie operacyjnym Android wszystkie aplikacje są instalowane w postaci pakietów JAVA. Dlatego do wyodrębnienia informacji o ścieżce pakietów używana jest klasa Android PackageManager.

Pobiera informacje o pakiecie i aktywności aplikacji zainstalowanej przed i po instalacji. Jest instalowany na urządzeniach z Androidem.

Możesz uzyskać instancję klasy PackageManager, wywołując metodę getPackageManager ().

Ta metoda może uzyskiwać dostęp do pakietów i związanych z nimi uprawnień zainstalowanych aplikacji oraz manipulować nimi.

Na przykład -

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

Podsumowanie:

  • Pożądana zdolność zawsze działa na parze klucz-wartość, aby wysłać polecenie do serwera APPIUM.
  • Użyj klasy „PackageManager”, aby wyodrębnić informacje o aplikacji w systemie Android.