Tutorial ini akan membantu Anda memahami alat otomatisasi APPIUM. Ini akan mencakup kemampuan dan APPIUM yang diinginkan dengan penggunaan Maven.
Dalam tutorial ini, Anda akan belajar-
- Apa itu Kemampuan yang Diinginkan?
- Mengekstrak informasi Paket & Aktivitas
Apa itu Kemampuan yang Diinginkan
'Kemampuan yang Diinginkan' membantu kami mengubah perilaku server sementara Otomatisasi. Di Appium, ini adalah jenis hashmap atau pasangan nilai kunci, digunakan untuk mengirim perintah ke server APPIUM. Di APPIUM, semua perintah klien berjalan dalam konteks sesi.
Misalnya, klien mengirim permintaan POST / sesi yang berisi objek JSON ke server APPIUM.
Oleh karena itu, untuk mengirim permintaan yang diinginkan atau untuk mempertahankan sesi yang diinginkan dengan server, satu set pasangan kunci dan nilai digunakan. Ini dikenal sebagai 'Kemampuan yang Diinginkan'.
impor io.appium.java_client.AppiumDriver;impor org.openqa.selenium.remote.DesiredCapabilities;{Kemampuan DesiredCapabilities = DesiredCapabilities baru ();kapabilitas.setCapability ("deviceName", "Android Emulator");kapabilitas.setCapability ("platformVersion", "4.4");}
Peran Penting Kemampuan yang Diinginkan-
- 'DesiredCapabilities' membantu pengguna untuk mengontrol permintaan sesi dengan server. Misalnya- jika kita menginginkan sesi iOS maka kita dapat menetapkan Kapabilitas sebagai Nama Platform = iOS. Atau jika kita menginginkan sesi Android maka kita dapat mengatur Capability sebagai PlatformName = Android.
- 'DesiredCapabilities' digunakan untuk menyiapkan instance Webdriver misalnya: FirefoxDriver, ChromeDriver, InternetExplorerDriver, dll.
- DesiredCapability sangat berguna untuk Selenium Grid. Misalnya: Ini digunakan untuk mengakses kasus uji yang berbeda pada browser yang berbeda dan sistem operasi yang berbeda. Berdasarkan DesiredCapability Grid tersebut, hub akan mengarah ke node yang sesuai. Di sini, node ini didefinisikan menggunakan metode properti 'set' misalnya: -
DesiredCapabilities obj = baru DesiredCapabilities ();obj.setBrowserName ("firefox");obj.setVersion ("18.0.1");obj.setPlatform (org.openqa.selenium.Platform.WINDOWS);
- Kemampuan yang diinginkan adalah paket yang ditentukan pustaka. Sebelum menggunakan 'DesiredCapabilities', itu harus diimpor dari pustaka yang disebutkan di bawah ini
Org.openqa.selenium.remote.DesiredCapabilities
APPIUM mendukung Android dan iOS. Oleh karena itu, ada satu set kemampuan server Appium yang terpisah.
Tabel di bawah ini menggambarkan beberapa kemampuan Android yang umum digunakan dan nilainya untuk digunakan-
Kemampuan | Deskripsi | Nilai / Kegunaan |
---|---|---|
appPackage | Panggil paket Java yang diinginkan di android yang ingin dijalankan pengguna | Value = com.example.myapp / Obj.setCapability ("appPackage", "com.whatsapp"); |
appActivity | Aktivitas Aplikasi yang ingin diluncurkan pengguna dari paket. | Value = MainActivity, .Settings Obj.setCapability ("appActivity", "com.whatsapp.Main"); |
appWaitPackage | Paket dari mana aplikasi harus menunggu | Value = com.example.android.myapp |
appWaitActivity | Setiap aktivitas Android yang pengguna membutuhkan waktu tunggu | Nilai = Kemampuan SplashActivity.setCapability ("appWaitActivity", "com.example.game.SplashActivity") |
CATATAN - Lihat tautan ini 'https://appium.io/docs/en/writing-running-appium/caps/#android-only' untuk melihat Kemampuan Android lainnya
Tabel di bawah ini menggambarkan beberapa kemampuan iOS yang umum digunakan dan nilainya untuk digunakan-
Kemampuan | Deskripsi | Nilai |
---|---|---|
LaunchTimeout | Total waktu (dalam md) untuk menunggu instrumentasi. | 2000 |
UDID | Untuk mengidentifikasi nomor perangkat unik untuk perangkat fisik yang terhubung | 166aestu4 |
CATATAN- Lihat tautan ini 'http://appium.io/slate/en/master/?java#ios-only' untuk melihat lebih banyak Kemampuan iOS
Mengekstrak informasi Paket & Aktivitas
Paket terkait dengan file atau kelas yang dibundel. Ini memberikan struktur yang terorganisir untuk pemrograman modular. Di Java, paket yang berbeda disimpan dalam satu file Jar. Pengguna dapat dengan mudah memanggil file jar untuk eksekusi penuh. Konsep serupa diikuti dalam dunia pengembangan aplikasi Mobile.
Di sistem operasi Android, semua aplikasi diinstal dalam bentuk paket JAVA. Oleh karena itu, untuk mengekstrak informasi jalur paket, kelas Android PackageManager digunakan.
Ini mengambil paket dan informasi aktivitas dari aplikasi pra dan pasca diinstal. Itu dipasang di perangkat Android.
Anda bisa mendapatkan instance kelas PackageManager Dengan memanggil getPackageManager ().
Metode ini dapat mengakses dan memanipulasi paket dan izin terkait dari aplikasi yang diinstal.
Sebagai contoh -
PackageManager pManager = getPackageManager ();Daftarlist = pManager.getInstalledApplications (PackageManager.GET_META_DATA)
Ringkasan:
- Kemampuan yang Diinginkan selalu berjalan pada pasangan nilai-kunci untuk mengirim perintah ke Server APPIUM.
- Gunakan kelas 'PackageManager' untuk mengekstrak informasi aplikasi di Android.