Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Berinteraksi dengan perangkat menggunakan Appium
Setelah Anda membuat sesi akses jarak jauh, perangkat akan tersedia untuk pengujian Appium. Untuk seluruh durasi sesi akses jarak jauh, Anda dapat menjalankan sesi Appium sebanyak yang Anda inginkan di perangkat, tanpa batasan pada klien apa yang Anda gunakan. Misalnya, Anda dapat memulai dengan menjalankan pengujian menggunakan kode Appium lokal dari IDE Anda, lalu beralih menggunakan Appium Inspector untuk memecahkan masalah apa pun yang Anda temui. Sesi dapat berlangsung hingga 150 menit, namun, jika tidak ada aktivitas selama lebih dari 5 menit (baik melalui konsol interaktif atau melalui titik akhir Appium), sesi akan habis waktu.
Menggunakan aplikasi untuk pengujian dengan sesi Appium
Ada beberapa cara untuk menyediakan aplikasi untuk digunakan dengan sesi Appium Anda:
-
Unggah aplikasi ke Device Farm dan instal di sesi.
-
Tentukan URL HTTPS atau Amazon S3 URI sebagai kemampuannya.
appium:app -
Referensikan aplikasi yang sudah diinstal dengan nama paketnya (menggunakan
appium:appPackagedi Android atau diappium:bundleIdiOS). -
Uji aplikasi web dengan menentukan
browserNamekemampuan (Chromedi Android,Safaridi iOS).
Batas ukuran aplikasi standar (4 GB) berlaku untuk semua sumber aplikasi.
catatan
Device Farm tidak mendukung penerusan jalur sistem file lokal appium:app selama sesi akses jarak jauh.
Mengunggah, menginstal, dan menggunakan aplikasi
Untuk menggunakan aplikasi yang diunggah dengan sesi Appium Anda, ikuti langkah-langkah berikut:
-
Unggah dan instal aplikasi Anda
Ada dua cara untuk mengunggah dan menginstal aplikasi ke perangkat yang sedang diuji:
-
Sertakan aplikasi ARN dalam permintaan Anda
CreateRemoteAccessSession. Aplikasi secara otomatis diinstal ke perangkat saat sesi dimulai. Anda juga dapat menyertakan aplikasi tambahan ARNs, yang akan diinstal bersama aplikasi utama. -
Instal aplikasi selama sesi aktif menggunakan
InstallToRemoteAccessSessionAPI, atau dengan mengunggahnya melalui konsol Device Farm. Ini memungkinkan Anda untuk mengubah aplikasi yang sedang diuji tanpa membuat sesi baru.
-
-
Gunakan aplikasi yang diinstal
Setelah diinstal, aplikasi secara otomatis disuntikkan sebagai
appium:appkemampuan default untuk sesi Appium berikutnya. Jika Anda menyertakan aplikasi tambahan, mereka ditetapkan sebagaiappium:otherAppskemampuan.Misalnya, jika Anda membuat sesi akses jarak jauh menggunakan
com.aws.dev.rproxy.goskope.comicefarm.samplesebagai aplikasi Anda, dancom.aws.dev.rproxy.goskope.comicefarm.other.samplesebagai salah satu aplikasi tambahan Anda, maka ketika Anda pergi untuk membuat sesi Appium, itu akan memiliki kemampuan yang mirip dengan yang berikut:{ "value": { "sessionId": "abcdef123456-1234-5678-abcd-abcdef123456", "capabilities": { "app": "/tmp/com.aws.dev.rproxy.goskope.comicefarm.sample.apk", "otherApps": "[\"/tmp/com.aws.dev.rproxy.goskope.comicefarm.other.sample.apk\"]", ... } } }Jika Anda menginstal aplikasi baru selama sesi, itu menggantikan
appium:appkemampuan saat ini. Jika aplikasi yang diinstal sebelumnya memiliki nama paket yang berbeda, itu tetap ada di perangkat dan pindah keappium:otherAppskemampuan.Misalnya, jika Anda awalnya menggunakan
com.aws.dev.rproxy.goskope.comicefarm.samplesaat membuat sesi akses jarak jauh Anda, tetapi kemudian menginstalcom.aws.dev.rproxy.goskope.comicefarm.other.sampleselama sesi, maka sesi Appium Anda akan memiliki kemampuan yang mirip dengan yang berikut:{ "value": { "sessionId": "abcdef123456-1234-5678-abcd-abcdef123456", "capabilities": { "app": "/tmp/com.aws.devicefarm.other.sample.apk", "otherApps": "[\"/tmp/com.aws.dev.rproxy.goskope.comicefarm.sample.apk\"]", ... } } }
catatan
Untuk informasi selengkapnya tentang mengunggah aplikasi secara otomatis sebagai bagian dari sesi akses jarak jauh Anda, lihat mengotomatiskan unggahan aplikasi.
Menggunakan URL HTTPS
Anda dapat menentukan URL HTTPS yang dapat diakses publik sebagai kemampuan yang appium:app diinginkan saat membuat sesi Appium. URL harus mengarah langsung ke file aplikasi yang dapat diunduh (misalnya, .ipa file .apk atau). Device Farm mengunduh aplikasi dari URL yang ditentukan dan menginstalnya ke perangkat yang sedang diuji.
penting
Hanya HTTPS URLs yang didukung. HTTP biasa URLs ditolak.
Misalnya, permintaan pembuatan sesi Appium berikut mengunduh aplikasi dari URL HTTPS:
{
"capabilities":
{
"alwaysMatch": {},
"firstMatch":
[
{
"appium:app": "https://example.com/path/to/MyApp.apk"
}
]
}
}
Menggunakan URI Amazon S3
Anda dapat menentukan URI Amazon S3 (misalnya,s3://my-bucket/path/to/MyApp.ipa) sebagai kemampuan appium:app yang diinginkan saat membuat sesi Appium. Device Farm mengunduh aplikasi dari lokasi S3 yang ditentukan dan menginstalnya ke perangkat yang sedang diuji.
Untuk menggunakan URI S3, persyaratan berikut harus dipenuhi:
-
Sesi akses jarak jauh harus dimulai dari proyek yang memiliki peran eksekusi IAM yang dikonfigurasi.
-
Peran eksekusi IAM harus memiliki durasi sesi maksimum minimal 150 menit, karena peran tersebut diasumsikan selama durasi sesi akses jarak jauh.
-
Peran eksekusi IAM harus memiliki izin untuk memanggil
s3:GetObjectobjek S3 yang ditentukan dalam URI. Kami juga merekomendasikan pemberians3:HeadObjectizin pada objek yang sama, yang memungkinkan Device Farm memvalidasi keberadaan objek sebelum mencoba mengunduh.
Misalnya, permintaan pembuatan sesi Appium berikut mengunduh aplikasi dari URI S3:
{
"capabilities":
{
"alwaysMatch": {},
"firstMatch":
[
{
"appium:app": "s3://my-test-bucket/apps/MyApp.ipa"
}
]
}
}
Berikut ini adalah contoh kebijakan izin IAM yang memberikan akses yang disarankan untuk mengunduh aplikasi dari Amazon S3, termasuk izin opsional. s3:HeadObject Untuk informasi selengkapnya tentang mengonfigurasi peran eksekusi IAM, lihat. Akses sumber daya AWS menggunakan Peran Eksekusi IAM
contoh
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:HeadObject" ], "Resource": "arn:aws:s3:::my-test-bucket/apps/*" } ] }
Menggunakan aplikasi yang sudah diinstal
Jika aplikasi yang ingin Anda uji sudah diinstal pada perangkat, Anda dapat mereferensikannya langsung dengan nama paketnya alih-alih mengunggahnya. Gunakan appium:appPackage dan appium:appActivity kemampuan di Android, atau appium:bundleId kemampuan di iOS.
Misalnya, permintaan pembuatan sesi Appium berikut meluncurkan aplikasi Android yang sudah diinstal:
{
"capabilities":
{
"alwaysMatch": {},
"firstMatch":
[
{
"appium:appPackage": "com.example.myapp",
"appium:appActivity": "com.example.myapp.MainActivity"
}
]
}
}
Di iOS, gunakan appium:bundleId sebagai gantinya:
{
"capabilities":
{
"alwaysMatch": {},
"firstMatch":
[
{
"appium:bundleId": "com.example.myapp"
}
]
}
}
Menguji aplikasi web
Untuk menguji aplikasi web, tentukan browserName kemampuan dalam permintaan pembuatan sesi Appium Anda. Gunakan Chrome di perangkat Android atau Safari di perangkat iOS.
Misalnya, permintaan berikut membuka Chrome di perangkat Android:
{
"capabilities":
{
"alwaysMatch": {},
"firstMatch":
[
{
"browserName": "Chrome"
}
]
}
}
Cara menggunakan titik akhir Appium
Berikut adalah langkah-langkah untuk mengakses titik akhir Appium sesi dari konsol, konsol AWS CLI, dan. AWS SDKs Langkah-langkah ini mencakup cara memulai menjalankan pengujian menggunakan berbagai kerangka kerja pengujian klien Appium: