Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Tutorial: Membuat pipeline yang membangun dan menguji aplikasi Android Anda AWS Device Farm
Anda dapat menggunakannya AWS CodePipeline untuk mengonfigurasi alur integrasi berkelanjutan di mana aplikasi Anda dibuat dan diuji setiap kali komit didorong. Tutorial ini menunjukkan cara membuat dan mengonfigurasi pipeline untuk membangun dan menguji aplikasi Android Anda dengan kode sumber di GitHub repositori. Pipeline mendeteksi kedatangan GitHub komit baru dan kemudian digunakan CodeBuilduntuk membangun aplikasi dan Device Farm untuk mengujinya.
penting
Sebagai bagian dari pembuatan pipa di konsol, ember artefak S3 akan digunakan CodePipeline untuk artefak. (Ini berbeda dari bucket yang digunakan untuk aksi sumber S3.) Jika bucket artefak S3 berada di akun yang berbeda dari akun untuk pipeline Anda, pastikan bucket artefak S3 dimiliki oleh Akun AWS yang aman dan dapat diandalkan.
penting
Banyak tindakan yang Anda tambahkan ke pipeline dalam prosedur ini melibatkan AWS sumber daya yang perlu Anda buat sebelum membuat pipeline. AWS sumber daya untuk tindakan sumber Anda harus selalu dibuat di AWS Wilayah yang sama tempat Anda membuat pipeline. Misalnya, jika Anda membuat pipeline di Wilayah AS Timur (Ohio), CodeCommit repositori Anda harus berada di Wilayah AS Timur (Ohio).
Anda dapat menambahkan tindakan lintas wilayah saat membuat pipeline. AWS sumber daya untuk tindakan lintas wilayah harus berada di AWS Wilayah yang sama di mana Anda berencana untuk menjalankan tindakan. Untuk informasi selengkapnya, lihat Menambahkan tindakan Lintas wilayah di CodePipeline.
Anda dapat mencobanya menggunakan aplikasi Android dan definisi pengujian yang ada, atau Anda dapat menggunakan aplikasi sampel dan definisi pengujian yang disediakan oleh Device Farm
catatan
Sebelum Anda memulai
-
Masuk ke AWS Device Farm konsol dan pilih Buat proyek baru.
-
Pilih proyek Anda. Di browser, salin URL proyek baru Anda. URL berisi ID proyek.
-
Salin dan simpan ID proyek ini. Anda menggunakannya saat Anda membuat pipeline di CodePipeline.
Berikut adalah contoh URL untuk sebuah proyek. Untuk mengekstrak ID proyek, salin nilainya setelahnya
projects/
. Dalam contoh ini, ID proyek adalaheec4905f-98f8-40aa-9afc-4c1cfexample
.https://<region-URL>/devicefarm/home?region=us-west-2#/projects/eec4905f-98f8-40aa-9afc-4c1cfexample/runs
Konfigurasikan CodePipeline untuk menggunakan pengujian Device Farm
-
Tambahkan dan komit file yang dipanggil
buildspec.yml
di root kode aplikasi Anda, dan dorong ke repositori Anda. CodeBuild menggunakan file ini untuk menjalankan perintah dan mengakses artefak yang diperlukan untuk membangun aplikasi Anda.version: 0.2 phases: build: commands: - chmod +x ./gradlew - ./gradlew assembleDebug artifacts: files: - './android/app/build/outputs/**/*.apk' discard-paths: yes
-
(Opsional) Jika Anda menggunakan Calabash atau Appium untuk menguji aplikasi Anda, tambahkan file definisi pengujian ke repositori Anda. Pada langkah selanjutnya, Anda dapat mengonfigurasi Device Farm untuk menggunakan definisi untuk menjalankan rangkaian pengujian Anda.
Jika Anda menggunakan pengujian bawaan Device Farm, Anda dapat melewati langkah ini.
-
Untuk membuat pipeline dan menambahkan tahap sumber, lakukan hal berikut:
Masuk ke AWS Management Console dan buka CodePipeline konsol di https://console.aws.amazon.com/codepipeline/
. -
Pada halaman Selamat Datang, halaman Memulai, atau halaman Pipelines, pilih Buat pipeline.
-
Pada Langkah 1: Pilih halaman opsi pembuatan, di bawah Opsi pembuatan, pilih opsi Build custom pipeline. Pilih Berikutnya.
-
Pada Langkah 2: Pilih halaman pengaturan pipeline, dalam nama Pipeline, masukkan nama untuk pipeline Anda.
-
CodePipeline menyediakan pipa tipe V1 dan V2, yang berbeda dalam karakteristik dan harga. Jenis V2 adalah satu-satunya jenis yang dapat Anda pilih di konsol. Untuk informasi selengkapnya, lihat jenis pipa. Untuk informasi tentang harga CodePipeline, lihat Harga
. -
Dalam peran Layanan, biarkan peran layanan baru dipilih, dan biarkan nama Peran tidak berubah. Anda juga dapat memilih untuk menggunakan peran layanan yang ada, jika Anda memilikinya.
catatan
Jika Anda menggunakan peran CodePipeline layanan yang dibuat sebelum Juli 2018, Anda perlu menambahkan izin untuk Device Farm. Untuk melakukannya, buka konsol IAM, temukan peran, lalu tambahkan izin berikut ke kebijakan peran. Untuk informasi selengkapnya, lihat Menambahkan izin ke peran CodePipeline layanan.
{ "Effect": "Allow", "Action": [ "devicefarm:ListProjects", "devicefarm:ListDevicePools", "devicefarm:GetRun", "devicefarm:GetUpload", "devicefarm:CreateUpload", "devicefarm:ScheduleRun" ], "Resource": "*" }
-
Biarkan pengaturan di bawah Pengaturan lanjutan pada defaultnya, lalu pilih Berikutnya.
-
Pada Langkah 3: Tambahkan halaman tahap sumber, di penyedia Sumber, pilih GitHub (melalui GitHub Aplikasi).
-
Di bawah Koneksi, pilih koneksi yang ada atau buat yang baru. Untuk membuat atau mengelola koneksi untuk tindakan GitHub sumber Anda, lihatGitHub koneksi.
-
Di Repositori, pilih repositori sumber.
-
Di Branch, pilih cabang yang ingin Anda gunakan.
-
Biarkan default yang tersisa untuk tindakan sumber. Pilih Berikutnya.
-
Pada Langkah 4: Tambahkan tahap build, tambahkan tahap build:
-
Di Penyedia pembangunan, pilih AWS CodeBuild. Izinkan Wilayah ke default ke Wilayah alur.
-
Pilih Buat proyek.
-
Di Nama proyek, masukkan nama untuk proyek pembangunan ini.
-
Di Citra lingkungan, pilih Citra terkelola. Untuk Sistem operasi, pilih Ubuntu.
-
Untuk Waktu aktif, pilih Standar. Untuk Gambar, pilih:5.0aws/codebuild/standard.
CodeBuild menggunakan image OS ini, yang telah menginstal Android Studio, untuk membangun aplikasi Anda.
-
Untuk peran Layanan, pilih peran CodeBuild layanan yang ada atau buat yang baru.
-
Untuk spesifikasi Build, pilih Gunakan file buildspec.
-
Pilih Lanjutkan ke CodePipeline. Ini kembali ke CodePipeline konsol dan membuat CodeBuild proyek yang menggunakan
buildspec.yml
di repositori Anda untuk konfigurasi. Proyek build menggunakan peran layanan untuk mengelola Layanan AWS izin. Langkah ini mungkin memakan waktu beberapa menit. -
Pilih Berikutnya.
-
-
Pada Langkah 5: Tambahkan tahap pengujian, pilih Lewati tahap pengujian, lalu terima pesan peringatan dengan memilih Lewati lagi.
Pilih Berikutnya.
-
Pada Langkah 6: Tambahkan halaman tahap penerapan, pilih Lewati tahap penerapan, lalu terima pesan peringatan dengan memilih Lewati lagi. Pilih Berikutnya.
-
Pada Langkah 7: Tinjau, pilih Buat pipeline. Anda akan melihat diagram yang menunjukkan sumber dan tahap build.
-
Tambahkan tindakan pengujian Device Farm ke pipeline Anda:
-
Di kanan atas, pilih Edit.
-
Di bagian bawah diagram, pilih + Tambahkan tahap. Dalam nama Panggung, masukkan nama, seperti
Test
. -
Pilih + Tambahkan grup tindakan.
-
Di Nama tindakan, masukkan nama.
-
Di penyedia Action, pilih AWS Device Farm. Izinkan Wilayah ke default ke Wilayah alur.
-
Dalam artefak Input, pilih artefak input yang cocok dengan artefak keluaran dari tahap yang datang sebelum tahap pengujian, seperti.
BuildArtifact
Di AWS CodePipeline konsol, Anda dapat menemukan nama artefak keluaran untuk setiap tahap dengan mengarahkan kursor ke ikon informasi di diagram pipa. Jika pipeline menguji aplikasi langsung dari tahap Sumber, pilih SourceArtifact. Jika pipeline menyertakan tahap Build, pilih BuildArtifact.
-
Masuk ProjectId, masukkan ID proyek Device Farm Anda. Gunakan langkah-langkah di awal tutorial ini untuk mengambil ID proyek Anda.
-
Masuk DevicePoolArn, masukkan ARN untuk kumpulan perangkat. Untuk mendapatkan kumpulan perangkat yang tersedia ARNs untuk proyek, termasuk ARN untuk Perangkat Teratas, gunakan AWS CLI untuk memasukkan perintah berikut:
aws devicefarm list-device-pools --arn arn:aws:devicefarm:us-west-2:
account_ID
:project:project_ID
-
Masuk AppType, masukkan Android.
Berikut ini adalah daftar nilai yang valid untuk AppType:
-
iOS
-
Android
-
Web
-
-
Di App, masukkan jalur paket aplikasi yang dikompilasi. Jalur relatif terhadap akar artefak input untuk tahap pengujian. Biasanya, jalur ini mirip dengan
app-release.apk
. -
Masuk TestType, masukkan jenis pengujian Anda, lalu di Uji, masukkan jalur file definisi pengujian. Jalur relatif terhadap akar artefak input untuk pengujian Anda.
Berikut ini adalah daftar nilai yang valid untuk TestType:
-
APPIUM_JAVA_JUNIT
-
APPIUM_JAVA_TESTNG
-
APPIUM_NODE
-
APPIUM_RUBY
-
APPIUM_PYTHON
-
APPIUM_WEB_JAVA_JUNIT
-
APPIUM_WEB_JAVA_TESTNG
-
APPIUM_WEB_NODE
-
APPIUM_WEB_RUBY
-
APPIUM_WEB_PYTHON
-
BUILTIN_FUZZ
-
INSTRUMENTASI
-
XCTEST
-
XCTEST_UI
catatan
Node lingkungan khusus tidak didukung.
-
-
Di bidang yang tersisa, berikan konfigurasi yang sesuai untuk pengujian dan jenis aplikasi Anda.
-
(Opsional) Di Advanced, berikan informasi konfigurasi untuk uji coba Anda.
-
Pilih Simpan.
-
Di panggung yang Anda edit, pilih Selesai. Di AWS CodePipeline panel, pilih Simpan, lalu pilih Simpan pada pesan peringatan.
-
Untuk mengirimkan perubahan dan memulai pembuatan pipeline, pilih Rilis perubahan, lalu pilih Rilis.
-