View a markdown version of this page

Gunakan perintah codebuild- tests-run CLI - AWS CodeBuild

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

Gunakan perintah codebuild- tests-run CLI

AWS CodeBuild menyediakan CLI yang akan mengambil perintah pengujian dan lokasi file uji sebagai input. CLI dengan input ini akan membagi tes menjadi jumlah pecahan seperti yang ditentukan di parallelism bidang berdasarkan nama file uji. Penugasan file uji ke shard ditentukan oleh strategi sharding.

codebuild-tests-run \ --files-search "codebuild-glob-search '**/__tests__/*.js'" \ --test-command 'npx jest --runInBand --coverage' \ --sharding-strategy 'equal-distribution'

Tabel berikut menjelaskan bidang untuk perintah codebuild-tests-run CLI.

Nama bidang Tipe Diperlukan atau opsional Definisi

test-command

String

Diperlukan

Perintah ini digunakan untuk menjalankan tes.

files-search

String

Diperlukan

Perintah ini memberikan daftar file uji. Anda dapat menggunakan perintah codebuild-glob-search CLI yang AWS CodeBuild disediakan atau alat pencarian file lain pilihan Anda.

catatan

Pastikan bahwa files-search perintah mengeluarkan nama file, masing-masing dipisahkan oleh baris baru.

sharding-strategy

Enum

Opsional

Nilai yang valid: equal-distribution (default), stability

  • equal-distribution: Pecahkan file uji secara merata berdasarkan nama file uji.

  • stability: File uji Shard menggunakan hashing yang konsisten dari nama file.

Untuk informasi selengkapnya, lihat Tentang pemisahan tes.

codebuild-tests-runCLI bekerja terlebih dahulu untuk mengidentifikasi daftar file uji menggunakan perintah yang disediakan dalam files-search parameter. Kemudian menentukan subset file uji yang ditunjuk untuk pecahan saat ini (lingkungan) menggunakan strategi sharding yang ditentukan. Akhirnya, subset file uji ini diformat ke dalam daftar yang dipisahkan spasi dan ditambahkan ke akhir perintah yang disediakan dalam test-command parameter sebelum dieksekusi.

Untuk kerangka pengujian yang tidak menerima daftar yang dipisahkan spasi, codebuild-tests-run CLI menyediakan alternatif fleksibel melalui variabel CODEBUILD_CURRENT_SHARD_FILES lingkungan. Variabel ini berisi daftar jalur file uji yang dipisahkan baris baru yang ditunjuk untuk pecahan build saat ini. Dengan memanfaatkan variabel lingkungan ini, Anda dapat dengan mudah beradaptasi dengan berbagai persyaratan kerangka pengujian, mengakomodasi mereka yang mengharapkan format input berbeda dari daftar yang dipisahkan spasi. Selain itu, Anda juga dapat memformat nama file pengujian sesuai kebutuhan kerangka pengujian. Berikut ini adalah contoh penggunaan CODEBUILD_CURRENT_SHARD_FILES di Linux dengan kerangka Django. Berikut CODEBUILD_CURRENT_SHARD_FILES ini digunakan untuk mendapatkan jalur file notasi titik yang didukung oleh Django:

codebuild-tests-run \ —files-search "codebuild-glob-search '/tests/test_.py'" \ —test-command 'python3 manage.py test $(echo "$CODEBUILD_CURRENT_SHARD_FILES" | sed -E "s/\//__/g; s/\.py$//; s/__/./g")' \ —sharding-strategy 'equal-distribution'
catatan

Perhatikan bahwa variabel CODEBUILD_CURRENT_SHARD_FILES lingkungan hanya dapat digunakan di dalam lingkup codebuild-tests-run CLI.

Juga, jika Anda menggunakan perintah tes CODEBUILD_CURRENT_SHARD_FILES di dalam, masukkan tanda kutip ganda CODEBUILD_CURRENT_SHARD_FILES seperti yang ditunjukkan pada contoh di atas.