Tutorial: Buat pipeline yang membangun dan menguji aplikasi Android Anda denganAWS Device Farm - AWS CodePipeline

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Tutorial: Buat pipeline yang membangun dan menguji aplikasi Android Anda denganAWS Device Farm

Anda dapat menggunakanAWS CodePipelineuntuk mengkonfigurasi alur integrasi berkelanjutan di mana aplikasi Anda dibangun dan diuji setiap kali komit didorong. Tutorial ini menunjukkan cara membuat dan mengkonfigurasi pipeline untuk membangun dan menguji aplikasi Android Anda dengan kode sumber di repositori GitHub. Pipa mendeteksi kedatangan komit GitHub baru dan kemudian menggunakanCodeBuilduntuk membangun aplikasi danDevice Farmuntuk mengujinya.

penting

Banyak tindakan yang Anda tambahkan ke saluran pipa Anda dalam prosedur ini melibatkanAWSsumber daya yang perlu Anda buat sebelum membuat pipa.AWSsumber daya untuk tindakan sumber Anda harus selalu dibuat dengan cara yang samaAWSWilayah di mana Anda membuat pipa Anda. Misalnya, jika Anda membuat pipa Anda di Wilayah US East (Ohio), repositori CodeCommit Anda harus berada di Wilayah US East (Ohio).

Anda dapat menambahkan tindakan lintas wilayah saat membuat pipa Anda.AWSuntuk tindakan lintas wilayah harus berada diAWSWilayah di mana Anda berencana untuk mengeksekusi tindakan. Untuk informasi selengkapnya, lihat Tambahkan aksi lintas Wilayah di CodePipeline.

Anda dapat mencoba ini menggunakan aplikasi Android yang ada dan definisi pengujian, atau Anda dapat menggunakanaplikasi sampel dan definisi uji yang disediakan oleh Device Farm.

catatan

Sebelum Anda memulai

  1. Masuk keAWS Device Farmkonsol dan pilihMembuat proyek baru.

  2. Pilih proyek Anda. Di browser, salin URL proyek baru Anda. URL berisi ID proyek.

  3. Menyalin dan mempertahankan ID proyek ini. Anda menggunakannya saat membuat pipa Anda di CodePipeline.

    Berikut ini adalah contoh URL untuk proyek. Untuk mengekstrak ID proyek, salin nilai setelahprojects/. 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 Anda

  1. Menambahkan dan melakukan file yang disebutbuildspec.ymldi root kode aplikasi Anda, dan dorong ke repositori Anda. CodeBuild menggunakan file ini untuk melakukan 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
  2. (Opsional) Jika Andagunakan Calabash atau Appium untuk menguji aplikasi Anda, tambahkan file definisi uji ke repositori Anda. Pada langkah selanjutnya, Anda dapat mengkonfigurasi Device Farm untuk menggunakan definisi untuk melaksanakan test suite Anda.

    Jika Anda Device Farm bawaan, Anda dapat melewati langkah ini.

  3. Untuk membuat saluran Anda dan menambahkan tahap sumber, lakukan hal berikut:

    1. Masuk keAWS Management Consoledan buka konsol CodePipeline dihttps://console.aws.amazon.com/codepipeline/.

    2. PilihMembuat pipa. Di Langkah 1: Pilih pengaturan pipalaman, diNama saluran, masukkan nama untuk saluran Anda.

    3. MasukPeran layanan, tinggalkanPeran layanan barudipilih, dan meninggalkanNama perantidak berubah. Anda juga dapat memilih untuk menggunakan peran layanan yang sudah ada, jika Anda memilikinya.

      catatan

      Jika Anda menggunakan peran layanan CodePipeline yang dibuat sebelum Juli 2018, Anda perlu menambahkan izin untuk Device Farm. Untuk melakukannya, buka konsol IAM, cari perannya, lalu tambahkan izin berikut ke kebijakan peran. Untuk informasi selengkapnya, lihat Tambahkan izin keCodePipelineperan layanan.

      { "Effect": "Allow", "Action": [ "devicefarm:ListProjects", "devicefarm:ListDevicePools", "devicefarm:GetRun", "devicefarm:GetUpload", "devicefarm:CreateUpload", "devicefarm:ScheduleRun" ], "Resource": "*" }
    4. Biarkan pengaturan di bawahPengaturan lanjutandi default mereka, dan kemudian pilihSelanjutnya.

    5. Di Langkah 2: Tambahkan tahap sumberlaman, diPenyedia sumber, pilihGitHub.

    6. Di bawahKoneksi, pilih koneksi yang ada atau buat yang baru. Untuk membuat atau mengelola koneksi untuk tindakan sumber GitHub Anda, lihatKoneksi GitHub.

    7. MasukRepositori, pilih repositori sumber.

    8. MasukCabang, pilih cabang yang ingin Anda gunakan.

    9. Tinggalkan default yang tersisa untuk tindakan sumber. Pilih Selanjutnya.

  4. Di Tambahkan tahap membangun, tambahkan sebuah tahap membangun:

    1. Di Penyedia pembangunan, pilih AWS CodeBuild. Izinkan Wilayah ke default ke Wilayah alur.

    2. Pilih Buat proyek.

    3. Di Nama proyek, masukkan nama untuk proyek pembangunan ini.

    4. Di Citra lingkungan, pilih Citra terkelola. Untuk Sistem operasi, pilih Ubuntu.

    5. Untuk Waktu aktif, pilih Standar. UntukCitra, pilihaws/codebuild/standar: 1.0.

      CodeBuild menggunakan gambar OS ini, yang telah diinstal Android Studio, untuk membangun aplikasi Anda.

    6. UntukPeran layanan, pilih peran layanan CodeBuild yang sudah ada atau buat yang baru.

    7. UntukSpesifikasi bangunan, pilihMenggunakan file buildspec.

    8. Pilih Lanjutkan ke CodePipeline. Hal ini mengembalikan ke konsol CodePipeline dan membuat sebuah proyek CodeBuild yang menggunakanbuildspec.ymldi repositori Anda untuk konfigurasi. Proyek pembangunan menggunakan peran layanan untuk mengelolaAWSizin layanan. Langkah ini mungkin memakan waktu beberapa menit.

    9. Pilih Selanjutnya.

  5. PadaLangkah 4: Tambahkan tahaphalaman, pilihLewati tahap, dan kemudian menerima pesan peringatan dengan memilihLewatilagi. Pilih Selanjutnya.

  6. PadaLangkah 5: Tinjau, pilihMembuat pipa. Anda harus melihat diagram yang menunjukkan sumber dan membangun tahap.

  7. Tambahkan tindakan uji Device Farm ke pipeline Anda:

    1. Di kanan atas, pilihMengedit.

    2. Di bagian bawah diagram, pilih+ Tambahkan tahap. MasukNama tahap, masukkan nama, sepertiTest.

    3. Pilih+ Tambahkan grup aksi.

    4. MasukNama tindakan, masukkan sebuah nama.

    5. MasukPenyedia tindakan, pilihAWSDevice Farm. Izinkan Wilayah ke default ke Wilayah alur.

    6. Masukartefak masukan, pilih artefak masukan yang sesuai dengan artefak keluaran panggung yang datang sebelum tahap uji, sepertiBuildArtifact.

      DiAWS CodePipelinekonsol, Anda dapat menemukan nama artefak output untuk setiap tahap dengan melayang di atas ikon informasi dalam diagram pipa. Jika pipeline Anda menguji aplikasi langsung dariSumbertahap, pilihSourceArtifact. Jika pipa termasukMembanguntahap, pilihBuildArtifact.

    7. MasukProjectId, masukkan ID proyek Device Farm Anda. Gunakan langkah-langkah di awal tutorial ini untuk mengambil ID proyek Anda.

    8. MasukDevicePoolArn, masukkan ARN untuk kolam perangkat.

    9. MasukAppType, masukkanAndroid.

      Berikut ini adalah daftar nilai yang valid untukAppType:

      • iOS

      • Android

      • Web

    10. MasukAplikasi, masukkan jalur paket aplikasi yang dikompilasi. Jalur ini relatif terhadap akar artefak masukan untuk tahap uji. Biasanya, jalur ini mirip denganapp-release.apk.

    11. MasukTestType, masukkan jenis tes Anda, dan kemudian diUji, masukkan path dari file definisi tes. Jalur ini relatif terhadap akar artefak masukan untuk pengujian Anda.

      Berikut ini adalah daftar nilai yang valid untukTestType:

      • APPIUM_JAVA_JUNIT

      • APPIUM_JAVA_TESTNG

      • APPIUM_PYTHON

      • APPIUM_WEB_JAVA_JUNIT

      • APPIUM_WEB_JAVA_TESTNG

      • APPIUM_WEB_PYTHON

      • BUILTIN_EXPLORER

      • BUILTIN_FUZZ

      • KALABASH

      • INSTRUMENTASI

      • UIOTOMATISASI

      • UIAUTOMATOR

      • WEB_PERFORMANCE_PROFILE

      • XCTEST

      • XCTEST_UI

      catatan

      Node lingkungan khusus tidak didukung.

    12. Di bidang yang tersisa, berikan konfigurasi yang sesuai untuk jenis pengujian dan aplikasi Anda.

    13. (Opsional) DiLanjutan, berikan informasi konfigurasi untuk uji coba Anda.

    14. Pilih Save (Simpan).

    15. Di atas panggung Anda mengedit, pilihSelesai. DiAWS CodePipelinepane, pilihSimpan, dan kemudian pilihSimpanpada pesan peringatan.

    16. Untuk mengirimkan perubahan Anda dan memulai pembuatan pipa, pilihRilis perubahan, dan kemudian pilihRilis.