Android Emulator için Appium İstenen Yetenekler (Örnek)

İçindekiler:

Anonim

Bu eğitim, APPIUM otomasyon aracını anlamanıza yardımcı olacaktır. Maven kullanımları ile istenen yetenekleri ve APPIUM'u kapsayacaktır.

Bu eğitimde öğreneceksiniz-

  • İstenilen Yetenekler nedir?
  • Paketler ve Aktiviteler bilgilerinin çıkarılması

İstenilen Yetenekler Nelerdir

'İstenen Yetenekler', Otomasyon sırasında sunucunun davranışını değiştirmemize yardımcı olur. Appium'da, APPIUM sunucusuna bir komut göndermek için kullanılan bir tür karma harita veya anahtar-değer çiftidir. APPIUM'da, tüm istemci komutları bir oturum bağlamında çalışıyor.

Örneğin, bir istemci APPIUM sunucusuna JSON nesnesi içeren POST / oturum isteği gönderdi.

Bu nedenle, istenen herhangi bir isteği göndermek veya sunucu ile istenen herhangi bir oturumu sürdürmek için bir Anahtar ve değer çifti kümesi kullanılır. Bu, 'İstenen Yetenekler' olarak bilinir .

io.appium.java_client.AppiumDriver içe aktarın;import org.openqa.selenium.remote.DesiredCapabilities;{DesiredCapabilities yetenekleri = yeni DesiredCapabilities ();yetenekler.setCapability ("deviceName", "Android Emulator");yetenekler.setCapability ("platformVersion", "4.4");}

İstenilen Yeteneğin Önemli Rolü-

  • 'DesiredCapabilities', kullanıcının sunucuyla oturum isteğini kontrol etmesine yardımcı olur. Örneğin, iOS oturumu istiyorsak, Yeteneği PlatformName = iOS olarak ayarlayabiliriz. Veya Android oturumu istiyorsak, Yeteneği PlatformName = Android olarak ayarlayabiliriz.
  • 'DesiredCapabilities', Webdriver örneğini kurmak için kullanılır, örneğin: FirefoxDriver, ChromeDriver, InternetExplorerDriver vb.
  • DesiredCapability Selenium Grid için çok kullanışlıdır. Örneğin: Farklı bir tarayıcıda ve farklı işletim sistemlerinde farklı test senaryolarına erişmek için kullanılır. Bahsedilen DesiredCapability Grid'e göre, hub ilgili düğümü gösterecektir. Burada, bu düğümler 'set' özelliği yöntemi kullanılarak tanımlanır, örneğin: -
    DesiredCapabilities obj = new DesiredCapabilities ();obj.setBrowserName ("firefox");obj.setVersion ("18.0.1");obj.setPlatform (org.openqa.selenium.Platform.WINDOWS);
  • Arzu edilen bir yetenek, kütüphane tanımlı bir pakettir. 'DesiredCapabilities' kullanılmadan önce, aşağıda belirtilen kitaplıktan içe aktarılmalıdır.
    Org.openqa.selenium.remote.DesiredCapabilities

APPIUM hem Android hem de iOS'u destekler. Bu nedenle, ayrı bir Appium sunucu yetenekleri seti vardır.

Aşağıdaki tablo, yaygın olarak kullanılan bazı Android özelliklerini ve bunların kullanım değerini göstermektedir.

Yetenekler Açıklama Değerler / Kullanımlar
appPackage Kullanıcının çalıştırmak istediği Android'de istenen Java paketini arayın Value = com.example.myapp /
Obj.setCapability ("appPackage", "com.whatsapp");
appActivity Kullanıcının paketten başlatmak istediği Uygulama Etkinliği. Değer = MainActivity, .Settings
Obj.setCapability ("appActivity", "com.whatsapp.Main");
appWaitPackage Uygulamanın beklemesi gereken paket Değer = com.example.android.myapp
appWaitActivity Kullanıcının bekleme süresine ihtiyaç duyduğu herhangi bir Android etkinliği Value = SplashActivity
yetenekleri.setCapability ("appWaitActivity", "com.example.game.SplashActivity")

NOT - Daha fazla Android Yeteneğini görüntülemek için bu bağlantıya 'https://appium.io/docs/en/writing-running-appium/caps/#android-only' bakın

Aşağıdaki tablo, yaygın olarak kullanılan bazı iOS özelliklerini ve bunların kullanım değerini göstermektedir.

Yetenekler Açıklama Değerler
LaunchTimeout Enstrümantasyon için beklenecek toplam süre (ms cinsinden). 2000
SEN YAPTIN Bağlı fiziksel cihaz için benzersiz cihaz numarasını tanımlamak için 166aestu4

NOT - Daha fazla iOS Özelliklerini görüntülemek için bu bağlantıya 'http://appium.io/slate/en/master/?java#ios-only' bakın

Paketler ve Aktiviteler bilgilerinin çıkarılması

Paketler, paketlenmiş dosyalar veya sınıflarla ilgilidir. Modüler programlamaya organize bir yapı kazandırır. Java'da farklı paketler tek bir Jar dosyasında saklanır. Kullanıcı, tam çalıştırma için jar dosyasını kolayca çağırabilir. Mobil uygulama geliştirme dünyasında da benzer kavramlar izlendi.

Android işletim sisteminde tüm uygulamalar JAVA paketleri şeklinde kurulur. Bu nedenle, paketlerin yol bilgilerini çıkarmak için Android PackageManager sınıfı kullanılır.

Önceden ve sonradan yüklenmiş uygulamanın paket ve aktivite bilgilerini alır. Android cihazlara kurulur.

GetPackageManager () çağırarak PackageManager sınıfının bir örneğini alabilirsiniz.

Bu yöntem, yüklü uygulamaların paketlerine ve ilgili izinlerine erişebilir ve bunları değiştirebilir.

Örneğin -

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

Özet:

  • İstenen Yetenek APPIUM Sunucusuna komut göndermek için her zaman anahtar / değer çifti üzerinde çalışır.
  • Android'de uygulama bilgilerini ayıklamak için 'PackageManager' sınıfını kullanın.