Mobile Automation Series from Software Quality Assurance Path MySkill.id
Yuk subscribe untuk mendapatkan email notifikasi setiap ada artikel terbaru oleh MySkill
Apa Itu Appium?
Appium adalah alat otomatisasi uji (test automation tool) yang digunakan untuk menguji aplikasi mobile. Appium memungkinkan Anda untuk mengautomasi uji aplikasi mobile di perangkat Android dan iOS menggunakan bahasa pemrograman yang sama. Ini berarti bahwa Anda dapat menggunakan kode yang sama untuk menguji aplikasi Anda di berbagai platform mobile. Appium menawarkan fleksibilitas dan efisiensi tinggi dalam melakukan pengujian aplikasi mobile, serta mendukung berbagai jenis uji, seperti uji fungsional, uji performa, dan uji keamanan.
Bagaimana Cara Kerja Appium?
Berikut adalah cara kerja Appium:
- Client Appium (Test Script): Client Appium adalah kode pengujian yang ditulis oleh pengembang uji. Kode ini dikirim ke server Appium.
- Server Appium: Server Appium menerima permintaan dari client Appium dan mengolahnya. Server Appium akan memulai sesi uji, mengatur perangkat mobile, dan menjalankan skrip pengujian.
- Perangkat Mobile: Perangkat mobile adalah perangkat fisik atau emulator/simulator yang digunakan untuk menjalankan aplikasi yang akan diuji. Perangkat mobile ini dikonfigurasi oleh server Appium sesuai dengan kebutuhan pengujian.
- Automation Library: Automation library adalah perpustakaan khusus yang digunakan oleh server Appium untuk mengontrol perangkat mobile. Appium mendukung beberapa automation library, seperti Selendroid untuk Android dan XCUITest untuk iOS.
- Aplikasi Mobile: Aplikasi mobile adalah aplikasi yang akan diuji. Aplikasi ini diinstal pada perangkat mobile dan diinteraksi oleh server Appium sesuai dengan skrip pengujian.
- Reporting: Hasil pengujian akan dikirim kembali ke client Appium dalam bentuk laporan. Laporan ini dapat digunakan untuk melihat hasil pengujian dan mendeteksi kegagalan atau kesalahan.
Manfaat Penggunaan Appium
Berikut adalah manfaat penggunaan Appium:
- Kekonsistenan: Dengan menggunakan Appium, Anda dapat memastikan bahwa aplikasi Anda bekerja dengan baik dan konsisten di berbagai platform dan perangkat.
- Efisiensi: Appium mempercepat proses pengujian dengan mengotomatisasi tes, yang memungkinkan Anda untuk menghemat waktu dan biaya.
- Skalabilitas: Appium dapat digunakan untuk menguji aplikasi di skala besar, yang memungkinkan Anda untuk mengujinya di berbagai perangkat dan platform.
- Integrasi: Appium dapat diintegrasikan dengan mudah dengan alat pengujian lainnya, seperti Jenkins dan Selenium, yang memungkinkan Anda untuk membuat proses pengujian Anda lebih efisien.
- Peningkatan Kualitas: Dengan menggunakan Appium, Anda dapat meningkatkan kualitas aplikasi Anda dengan memvalidasi fungsionalitas aplikasi dan mendeteksi kesalahan.
- Regression Testing: Appium mempermudah regression testing dengan mengotomatisasi tes yang telah dibuat sebelumnya, yang memungkinkan Anda untuk memastikan bahwa perbaikan baru tidak merusak fungsionalitas lama.
- Smoke Testing: Appium dapat digunakan untuk smoke testing, yang memeriksa apakah aplikasi dapat diinstal dan menjalankan dasar fungsionalitas.
Kelebiham Appium
Appium menawarkan beberapa kelebihan yang penting, yaitu:
- Cross-Platform: Appium memungkinkan Anda menguji aplikasi mobile di berbagai platform, seperti iOS dan Android, menggunakan satu alat pengujian. Hal ini dapat menjimatkan waktu dan biaya pengujian.
- Open-Source dan Komunitas Aktif: Appium adalah proyek open-source yang memiliki komunitas aktif yang dapat membantu Anda menghadapi tantangan dalam pengujian. Anda dapat mengambil bagian dalam diskusi, meminta bantuan, dan membagikan pengalaman dengan komunitas ini.
- Bahasa Pemrograman dan Framework Dukungan: Appium mendukung beberapa bahasa pemrograman, seperti Python, Java, dan Ruby, dan framework pengujian, seperti JUnit dan TestNG. Hal ini membuat Appium lebih fleksibel dan dapat disesuaikan dengan kebutuhan Anda.
- Emulator dan Perangkat Fisik Dukungan: Appium dapat menguji aplikasi di emulator atau perangkat fisik. Hal ini memungkinkan Anda untuk menguji aplikasi di lingkungan yang paling sesuai dengan kebutuhan Anda.
- WebDriver Protokol: Appium menggunakan WebDriver Protokol, yang memungkinkan Anda menggunakan alat pengujian web yang sama untuk menguji aplikasi mobile. Hal ini mempermudah proses pengujian dan memaksimalkan efisiensi.
Perbedaan Appium V1.0 vs Appium V2.0
Appium V1.0
Appium V1.0 adalah versi pertama dari Appium yang menggunakan JSON Wire Protocol. JSON Wire Protocol adalah standar komunikasi yang digunakan oleh Selenium untuk mengontrol browser. Appium V1.0 mendukung automasi mobile untuk iOS dan Android. Namun, pada versi ini, automasi mobile hanya dapat dilakukan menggunakan driver tertentu, yaitu uiautomator2 untuk Android dan xcuitest untuk iOS.
Appium V2.0
Appium V2.0 adalah versi terbaru dari Appium yang menggunakan W3C WebDriver Protocol. W3C WebDriver Protocol adalah standar komunikasi yang lebih modern dan lebih baik daripada JSON Wire Protocol. Appium V2.0 mendukung automasi mobile untuk iOS dan Android, dan memungkinkan pengguna untuk memilih antara beberapa driver yang tersedia.
Perbedaan Utama
Berikut adalah beberapa perbedaan utama antara Appium V1.0 dan V2.0:
- Protokol Komunikasi: Appium V1.0 menggunakan JSON Wire Protocol, sedangkan Appium V2.0 menggunakan W3C WebDriver Protocol.
- Driver: Appium V1.0 hanya mendukung driver tertentu, yaitu uiautomator2 untuk Android dan xcuitest untuk iOS. Namun, Appium V2.0 memungkinkan pengguna untuk memilih antara beberapa driver yang tersedia.
- Capabilities: Pada Appium V1.0, automationName adalah capability opsional, sedangkan pada Appium V2.0, automationName adalah capability yang wajib diisi.
- CLI Params: Pada Appium V1.0, semua driver- dan platform-specific CLI params berada di server Appium. Namun, pada Appium V2.0, semua driver- dan platform-specific CLI params telah dipindahkan ke driver/plugin masing-masing.
Kelebihan Appium V2.0
Appium V2.0 memiliki beberapa kelebihan dibandingkan dengan Appium V1.0, yaitu:
- Standar Komunikasi: Appium V2.0 menggunakan W3C WebDriver Protocol, yang lebih modern dan lebih baik daripada JSON Wire Protocol.
- Pilihan Driver: Appium V2.0 memungkinkan pengguna untuk memilih antara beberapa driver yang tersedia.
- Kemampuan Kompatibilitas: Appium V2.0 lebih kompatibel dengan standar W3C, yang membuatnya lebih mudah untuk diintegrasikan dengan alat-alat pengujian lainnya.
Instalasi dan Konfigurasi Perangkat dan Server Appium V2
Appium V2 adalah evolusi dari versi sebelumnya dan menyajikan pengalaman otomatisasi yang ditingkatkan. Dalam artikel ini, kita akan membahas panduan setup perangkat dan server Appium V2 yang mudah dan lengkap. Selain itu, kita juga akan membahas tentang fitur Appium Inspector yang mempermudah pengembangan dan pengujian aplikasi.
Persiapan
Sebelum memulai instalasi, pastikan Anda telah memenuhi persyaratan berikut:
- Sistem Operasi: Windows, macOS, atau Linux
- Node.js: Versi terbaru
- Java Development Kit (JDK): Versi terbaru
- Android Studio: Untuk pengujian aplikasi Android
- Xcode: Untuk pengujian aplikasi iOS
Langkah-langkah Instalasi:
- Install Node.js: Appium V2 dibangun menggunakan Node.js, sehingga Anda harus memiliki Node.js terinstal di komputer Anda. Anda dapat mengunduh Node.js dari situs resmi Node.js (https://nodejs.org/en/download/).
- Install Appium: Setelah Node.js terinstal, Anda dapat menginstal Appium dengan menggunakan perintah berikut di terminal atau command prompt:
npm install -g @appium/cli
Perintah di atas akan menginstal Appium CLI (Command Line Interface) global di sistem Anda.
Install Driver: Untuk mengautomasi aplikasi Android, Anda perlu menginstal Appium Android Driver. Untuk mengautomasi aplikasi iOS, Anda perlu menginstal Appium iOS Driver. Anda dapat menginstal driver dengan menggunakan perintah berikut di terminal atau command prompt:
npm install -g @appium/android-driver
npm install -g @appium/ios-driver
Install Appium Server: Untuk menginstal server Appium, Anda dapat menggunakan perintah berikut di terminal atau command prompt:
npm install -g @appium/server
Memulai Appium Server: Setelah semua persyaratan terpenuhi, Anda dapat memulai server Appium dengan menggunakan perintah berikut di terminal atau command prompt:
appium
Perintah di atas akan memulai server Appium pada port default (4723).
Verifikasi Instalasi: Untuk memverifikasi bahwa Appium terinstal dan berjalan dengan baik, Anda dapat mengakses alamat http://localhost:4723/wd/hub di browser web. Jika Appium berjalan dengan baik, Anda akan melihat halaman informasi tentang server Appium.
Fitur Appium Inspector: Appium Inspector adalah alat visual yang membantu pengembang dan pengujian untuk memeriksa dan memvalidasi elemen aplikasi. Appium Inspector menawarkan beberapa fitur, seperti:
- Menampilkan struktur hierarki elemen aplikasi
- Menampilkan atribut dan nilai elemen aplikasi
- Menampilkan interaksi yang tersedia pada elemen aplikasi
- Menyediakan cara mudah untuk mengambil identifikasi unik dari elemen aplikasi
Untuk mengaktifkan Appium Inspector, Anda dapat menambahkan parameter --inspector
saat memulai server Appium.
Cara Install Appium di Windows, macOS, dan Linux dalam Bahasa Indonesia
Untuk menggunakan Appium, Anda perlu menginstalnya terlebih dahulu di perangkat Anda. Berikut adalah langkah-langkah untuk menginstal Appium di Windows, macOS, dan Linux.
Instalasi Appium di Windows
Instal Node.js: Appium berjalan di atas Node.js, jadi pertama-tama pastikan Anda telah menginstal Node.js di komputer Anda. Anda dapat mengunduh Node.js dari situs resmi Node.js.
Instal Appium: Buka terminal atau command prompt dan jalankan perintah berikut:
npm install -g appium
Perintah di atas akan mengunduh dan menginstal Appium.
Memulai Appium Server: Jalankan perintah berikut di terminal atau command prompt:
appium
Perintah di atas akan memulai server Appium pada port default (4723).
Instalasi Appium di macOS
Instal Node.js: Pastikan Anda telah menginstal Node.js di komputer Anda. Anda dapat mengunduh Node.js dari situs resmi Node.js.
Instal Appium: Buka terminal dan jalankan perintah berikut:
npm install -g appium
Perintah di atas akan mengunduh dan menginstal Appium.
Memulai Appium Server: Jalankan perintah berikut di terminal:
appium
Perintah di atas akan memulai server Appium pada port default (4723).
Instalasi Appium di Linux
Instal Node.js: Pastikan Anda telah menginstal Node.js di komputer Anda. Anda dapat mengunduh Node.js dari situs resmi Node.js.
Instal Appium: Buka terminal dan jalankan perintah berikut:
sudo npm install -g appium
Perintah di atas akan mengunduh dan menginstal Appium.
Memulai Appium Server: Jalankan perintah berikut di terminal:
appium
Perintah di atas akan memulai server Appium pada port default (4723).
Verifikasi Instalasi Appium
Untuk memverifikasi bahwa Appium telah terinstal dan berjalan dengan baik, Anda dapat mengakses alamat http://localhost:4723/wd/hub di browser web. Jika Appium berjalan dengan baik, Anda akan melihat halaman informasi tentang server Appium.
Set Up Appium Server
Untuk mengatur Appium Server, Anda dapat mengikuti langkah-langkah berikut:
Pastikan Anda telah menginstal Node.js dan Appium di komputer Anda.
Appium berjalan di atas Node.js, jadi pastikan Anda telah menginstal Node.js di komputer Anda. Anda dapat mengunduh Node.js dari situs resmi Node.js. Setelah Node.js terinstal, Anda dapat menginstal Appium dengan menggunakan perintah berikut di terminal atau command prompt:
npm install -g appium
Instal Appium-doctor, sebuah alat yang membantu mengatur Appium Server.
Appium-doctor adalah alat yang dapat membantu Anda mengatur Appium Server dengan mudah. Anda dapat menginstal Appium-doctor dengan menggunakan perintah berikut di terminal atau command prompt:
npm install -g appium-doctor
Jalankan Appium-doctor untuk mengatur Appium Server.
Setelah Appium-doctor terinstal, Anda dapat menggunakannya untuk mengatur Appium Server dengan menggunakan perintah berikut di terminal atau command prompt:
appium-doctor
Appium-doctor akan mengecek apakah Anda telah memenuhi persyaratan untuk menggunakan Appium dan akan menampilkan hasilnya. Jika Anda melihat pesan “Appium Doctor: Appium is set up correctly.”, maka Appium Server telah berhasil disetup.
Jalankan Appium Server.
Setelah Appium Server berhasil disetup, Anda dapat menjalankannya dengan menggunakan perintah berikut di terminal atau command prompt:
appium
Setelah perintah di atas dijalankan, Appium Server akan mulai berjalan pada port default (4723). Anda dapat melihatnya di alamat http://localhost:4723/wd/hub
.
Berikut adalah contoh kode untuk mengatur Appium Server dengan Appium-doctor:
const { AppiumDoctor } = require('appium-doctor');
(async () => {
try {
const doctor = new AppiumDoctor();
await doctor.start();
console.log('Appium server started on port 4723');
} catch (err) {
console.error('Error starting Appium server:', err);
}
})();
Dengan menggunakan kode di atas, Anda dapat mengatur Appium Server secara programatik menggunakan Node.js.
Learn More Via: myskill.id/course/prediction-model-use-case