Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Tambahkan pengujian end-to-end Cypress ke aplikasi Amplify
Anda dapat menjalankan pengujian end-to-end (E2E) dalam fase pengujian aplikasi Amplify untuk menangkap regresi sebelum mendorong kode ke produksi. Fase pengujian dapat dikonfigurasi dalam spesifikasi build YAML. Saat ini, Anda hanya dapat menjalankan kerangka pengujian Cypress selama pembuatan.
Tutorial: Mengatur end-to-end tes dengan Cypress
Cypress adalah kerangka pengujian JavaScript berbasis yang memungkinkan Anda menjalankan tes E2E di browser. Untuk tutorial yang menunjukkan cara mengatur tes E2E, lihat posting blog Menjalankan tes end-to-end Cypress untuk penerapan CI/CD fullstack Anda
Tambahkan pengujian ke aplikasi Amplify yang ada
Anda dapat menambahkan pengujian Cypress ke aplikasi yang sudah ada dengan memperbarui setelan build aplikasi di konsol Amplify. Spesifikasi build YAMAL berisi kumpulan perintah build dan setelan terkait yang Amplify gunakan untuk menjalankan build Anda. Gunakan test
langkah untuk menjalankan perintah pengujian apa pun pada waktu pembuatan. Untuk pengujian E2E, Amplify Hosting menawarkan integrasi yang lebih dalam dengan Cypress yang memungkinkan Anda membuat laporan UI untuk pengujian Anda.
Daftar berikut menjelaskan pengaturan pengujian dan bagaimana mereka digunakan.
- Pretest
-
Instal dependensi yang diperlukan untuk menjalankan tes Cypress. Amplify Hosting menggunakan mochawesome
untuk menghasilkan laporan guna melihat hasil pengujian Anda dan menunggu untuk menyiapkan server localhost selama pembuatan. - pengujian
-
Jalankan perintah cypress untuk melakukan tes menggunakan mochawesome.
- PostTest
-
Laporan mochawesome dihasilkan dari output JSON. Perhatikan bahwa jika Anda menggunakan Yarn, Anda harus menjalankan perintah ini dalam mode diam untuk menghasilkan laporan mochawesome. Untuk Yarn, Anda dapat menggunakan perintah berikut.
yarn run --silent mochawesome-merge cypress/report/mochawesome-report/mochawesome*.json > cypress/report/mochawesome.json
- Artefak>BaseDirectory
Direktori dari mana tes dijalankan.
- artefak> configFilePath
Data laporan pengujian yang dihasilkan.
- artefak>file
Artefak yang dihasilkan (tangkapan layar dan video) tersedia untuk diunduh.
Contoh kutipan berikut dari amplify.yml
file spesifikasi build menunjukkan cara menambahkan pengujian Cypress ke aplikasi Anda.
test: phases: preTest: commands: - npm ci - npm install -g pm2 - npm install -g wait-on - npm install mocha mochawesome mochawesome-merge mochawesome-report-generator - pm2 start npm -- start - wait-on http://localhost:3000 test: commands: - 'npx cypress run --reporter mochawesome --reporter-options "reportDir=cypress/report/mochawesome-report,overwrite=false,html=false,json=true,timestamp=mmddyyyy_HHMMss"' postTest: commands: - npx mochawesome-merge cypress/report/mochawesome-report/mochawesome*.json > cypress/report/mochawesome.json - pm2 kill artifacts: baseDirectory: cypress configFilePath: '**/mochawesome.json' files: - '**/*.png' - '**/*.mp4'
Menonaktifkan pengujian
Setelah konfigurasi pengujian ditambahkan ke setelan amplify.yml
build Anda, test
langkah berjalan untuk setiap build, di setiap cabang. Jika Anda ingin menonaktifkan pengujian secara global agar tidak berjalan, atau hanya menjalankan pengujian untuk cabang tertentu, Anda dapat menggunakan variabel USER_DISABLE_TESTS lingkungan tanpa mengubah setelan build.
Untuk menonaktifkan pengujian secara global untuk semua cabang, tambahkan variabel USER_DISABLE_TESTS lingkungan dengan nilai true
untuk semua cabang. Tangkapan layar berikut, menunjukkan bagian Variabel lingkungan di konsol Amplify dengan pengujian dinonaktifkan untuk semua cabang.
![Bagian variabel Lingkungan di konsol Amplify.](images/amplify-disable-test-global.png)
Untuk menonaktifkan pengujian untuk cabang tertentu, tambahkan variabel USER_DISABLE_TESTS lingkungan dengan nilai false
untuk semua cabang, lalu tambahkan penggantian untuk setiap cabang yang ingin Anda nonaktifkan dengan nilaitrue
. Pada tangkapan layar berikut, tes dinonaktifkan di cabang utama, dan diaktifkan untuk setiap cabang lainnya.
![Bagian variabel Lingkungan di konsol Amplify.](images/amplify-disable-test-branch.png)
Menonaktifkan pengujian dengan variabel ini akan menyebabkan langkah pengujian dilewati sepenuhnya selama build. Untuk mengaktifkan kembali pengujian, atur nilai ini kefalse
, atau hapus variabel lingkungan.