Bagikan melalui


Menentukan konfigurasi rangkaian pengujian yang optimal

Pratinjau Pengujian Microsoft Playwright memungkinkan Anda mempercepat eksekusi pengujian Playwright dengan meningkatkan paralelisme pada skala cloud. Beberapa faktor memengaruhi waktu penyelesaian untuk rangkaian pengujian Anda. Menentukan konfigurasi optimal untuk mengurangi waktu penyelesaian rangkaian pengujian adalah khusus aplikasi dan memerlukan eksperimen. Artikel ini menjelaskan berbagai tingkat untuk mengonfigurasi paralelisme untuk pengujian Anda, faktor-faktor yang memengaruhi durasi pengujian, dan cara menentukan konfigurasi optimal Anda untuk meminimalkan waktu penyelesaian pengujian.

Di Playwright, Anda dapat menjalankan pengujian secara paralel dengan menggunakan proses pekerja. Dengan menggunakan Pengujian Microsoft Playwright, Anda dapat lebih meningkatkan paralelisme dengan menggunakan browser yang dihosting cloud. Secara umum, menambahkan lebih banyak paralelisme mengurangi waktu untuk menyelesaikan rangkaian pengujian Anda. Namun, menambahkan lebih banyak proses pekerja tidak selalu menghasilkan waktu penyelesaian rangkaian pengujian yang lebih pendek. Misalnya, sumber daya komputasi komputer klien, latensi jaringan, atau kompleksitas pengujian juga dapat memengaruhi durasi pengujian.

Bagan berikut memberikan contoh menjalankan rangkaian pengujian. Dengan menjalankan rangkaian pengujian dengan Microsoft Playwright Testing alih-alih secara lokal, Anda dapat secara signifikan meningkatkan paralelisme dan mengurangi waktu penyelesaian pengujian. Perhatikan bahwa, ketika berjalan dengan layanan, waktu penyelesaian mencapai batas minimum, setelah itu menambahkan lebih banyak pekerja hanya memiliki efek minimal. Bagan ini juga menunjukkan cara menggunakan lebih banyak sumber daya komputasi pada komputer klien secara positif memengaruhi waktu penyelesaian pengujian untuk pengujian yang berjalan dengan layanan.

Line chart that shows the relation between the number of parallel workers and the test suite completion time for different run environments.

Proses pekerja

Di Playwright, semua pengujian berjalan dalam proses pekerja. Proses ini adalah proses OS, berjalan secara independen, paralel, diatur oleh runner Uji Playwright. Semua pekerja memiliki lingkungan yang identik dan setiap proses memulai browsernya sendiri.

Umumnya, meningkatkan jumlah pekerja paralel dapat mengurangi waktu yang diperlukan untuk menyelesaikan rangkaian pengujian penuh. Anda dapat mempelajari selengkapnya tentang paralelisme Uji Playwright dalam dokumentasi Playwright.

Seperti yang ditunjukkan sebelumnya dalam bagan, waktu penyelesaian rangkaian pengujian tidak terus berkurang saat Anda menambahkan lebih banyak proses pekerja. Ada faktor lain yang memengaruhi durasi rangkaian pengujian.

Menjalankan pengujian secara lokal

Secara default, @playwright/test membatasi jumlah pekerja hingga 1/2 dari jumlah inti CPU pada komputer Anda. Anda dapat mengambil alih jumlah pekerja untuk menjalankan pengujian Anda.

Saat Anda menjalankan pengujian secara lokal, jumlah proses pekerja terbatas pada jumlah inti CPU pada komputer Anda. Di luar titik tertentu, menambahkan lebih banyak pekerja menyebabkan ketidakcocokan sumber daya, yang memperlambat setiap pekerja dan memperkenalkan kelemahan pengujian.

Untuk mengambil alih jumlah pekerja menggunakan --workers bendera baris perintah:

npx playwright test --workers=10

Untuk menentukan jumlah pekerja dalam playwright.config.ts menggunakan workers pengaturan:

export default defineConfig({
  ...
  workers: 10,
  ...
});

Menjalankan pengujian dengan layanan

Saat menggunakan Microsoft Playwright Testing, Anda dapat meningkatkan jumlah pekerja dalam skala cloud ke angka yang lebih besar. Saat Anda menggunakan layanan, proses pekerja terus berjalan secara lokal, tetapi instans browser intensif sumber daya sekarang berjalan dari jarak jauh di cloud.

Karena proses pekerja masih berjalan pada komputer klien (stasiun kerja pengembang atau mesin agen CI), komputer klien mungkin masih menjadi hambatan untuk eksekusi yang dapat diskalakan saat Anda menambahkan lebih banyak pekerja. Pelajari bagaimana Anda dapat menentukan konfigurasi optimal.

Anda dapat menentukan jumlah pekerja pada baris perintah dengan --workers bendera:

npx playwright test --config=playwright.service.config.ts --workers=30

Secara bergantian Anda dapat menentukan jumlah pekerja dalam playwright.service.config.ts menggunakan workers pengaturan:

export default defineConfig({
  ...
  workers: 30,
  ...
});

Faktor-faktor yang memengaruhi waktu penyelesaian

Selain jumlah proses pekerja paralel, ada beberapa faktor yang memengaruhi waktu penyelesaian rangkaian pengujian.

Kecil Efek pada durasi pengujian
Sumber daya komputasi komputer klien Proses pekerja masih berjalan pada komputer klien (stasiun kerja pengembang atau mesin agen CI) dan perlu berkomunikasi dengan browser jarak jauh. Meningkatkan jumlah pekerja paralel dapat mengakibatkan ketidakcocokan sumber daya pada komputer klien, dan memperlambat pengujian.
Kompleksitas kode pengujian Ketika kompleksitas kode pengujian meningkat, waktu untuk menyelesaikan pengujian juga dapat meningkat.
Latensi antara komputer klien dan browser jarak jauh Pekerja berjalan pada komputer klien dan berkomunikasi dengan browser jarak jauh. Bergantung pada wilayah Azure tempat browser dihosting, latensi jaringan mungkin meningkat. Pelajari cara mengoptimalkan latensi regional dalam Pengujian Microsoft Playwright.
Pengaturan konfigurasi Playwright Pengaturan Playwright seperti batas waktu layanan, percobaan ulang, atau pelacakan dapat berdampak buruk pada waktu penyelesaian pengujian. Bereksperimenlah dengan konfigurasi optimal untuk pengaturan ini saat menjalankan pengujian Anda di cloud.
Kapasitas penanganan beban aplikasi target Menjalankan pengujian dengan Microsoft Playwright Testing memungkinkan Anda menjalankan dengan paralelisme yang lebih tinggi, yang menghasilkan beban yang lebih tinggi pada aplikasi target. Verifikasi bahwa aplikasi dapat menangani beban yang dihasilkan dengan menjalankan pengujian Playwright Anda.

Pelajari selengkapnya tentang alur kerja untuk menentukan konfigurasi optimal untuk meminimalkan durasi rangkaian pengujian.

Alur kerja untuk menentukan konfigurasi optimal Anda

Konfigurasi optimal untuk meminimalkan waktu penyelesaian rangkaian pengujian khusus untuk aplikasi dan lingkungan Anda. Untuk menentukan konfigurasi optimal Anda, bereksperimenlah dengan tingkat paralelisasi yang berbeda, konfigurasi perangkat keras komputer klien, atau penyiapan rangkaian pengujian.

Pendekatan berikut dapat membantu Anda menemukan konfigurasi optimal untuk menjalankan pengujian Anda dengan Microsoft Playwright Testing:

1. Tentukan tujuan waktu penyelesaian pengujian Anda

Tentukan apa itu waktu penyelesaian rangkaian pengujian yang dapat diterima dan biaya terkait per eksekusi pengujian.

Tergantung pada skenarionya, persyaratan Anda untuk penyelesaian pengujian mungkin berbeda. Saat Anda menjalankan pengujian end-to-end dengan setiap perubahan kode, sebagai bagian dari alur kerja integrasi berkelanjutan (CI), meminimalkan waktu penyelesaian pengujian sangat penting. Saat Anda menjadwalkan pengujian end-to-end dalam eksekusi batch (malam hari), Anda mungkin memiliki persyaratan yang kurang menuntut.

2. Verifikasi bahwa pengujian Anda berjalan dengan benar pada komputer klien

Sebelum menjalankan rangkaian pengujian Playwright dengan Microsoft Playwright Testing, pastikan pengujian Anda berjalan dengan benar di komputer klien Anda. Jika Anda menjalankan pengujian sebagai bagian dari alur kerja CI, validasi bahwa pengujian Anda berjalan dengan benar pada mesin agen CI. Pastikan Anda menjalankan pengujian dengan minimal dua pekerja paralel untuk memverifikasi bahwa pengujian Anda dikonfigurasi dengan benar untuk eksekusi paralel. Pelajari selengkapnya tentang paralelisme di Playwright.

3. Jalankan dengan browser yang dihosting cloud di Pengujian Microsoft Playwright

Setelah pengujian Anda berjalan dengan benar, tambahkan konfigurasi layanan untuk menjalankan pengujian Anda di browser yang dihosting cloud dengan layanan. Validasi bahwa pengujian Anda terus berjalan dengan benar dari komputer klien Anda (stasiun kerja pengembang atau mesin agen CI).

Mulai menggunakan Mulai Cepat: jalankan pengujian Playwright dalam skala besar dengan Microsoft Playwright Testing.

4. Verifikasi browser jarak jauh wilayah Azure

Pengujian Microsoft Playwright dapat menggunakan browser jarak jauh di wilayah Azure yang terdekat dengan komputer klien Anda, atau menggunakan wilayah tetap tempat ruang kerja Anda dibuat.

Pelajari cara mengoptimalkan latensi regional untuk ruang kerja Anda.

5. Bereksperimenlah dengan jumlah pekerja paralel

Bereksperimenlah dengan jumlah pekerja paralel untuk menjalankan pengujian Anda. Ukur waktu penyelesaian pengujian dan bandingkan dengan tujuan target yang Anda tetapkan sebelumnya.

Perhatikan pada titik mana waktu penyelesaian pengujian tidak lagi berkurang saat Anda menambahkan lebih banyak pekerja. Pindah ke langkah berikutnya untuk mengoptimalkan penyiapan Anda lebih lanjut.

Catatan

Saat layanan dalam pratinjau, jumlah pekerja paralel per ruang kerja dibatasi hingga 50. Anda dapat meminta peningkatan batas ini untuk ruang kerja Anda.

6. Skalakan klien

Saat Anda meningkatkan paralelisme, komputer klien mungkin mengalami ketidakcocokan sumber daya komputasi. Tingkatkan sumber daya komputasi pada komputer klien, misalnya dengan memilih runner yang dihosting GitHub yang lebih besar.

Atau, jika Anda memiliki batasan perangkat keras, Anda dapat memecah pengujian klien Anda.

Jalankan ulang pengujian dan eksperimen Anda dengan jumlah pekerja paralel.

7. Perbarui pengaturan konfigurasi pengujian Playwright Anda

Konfigurasikan pengaturan konfigurasi pengujian Playwright Anda, seperti batas waktu pengujian, pengaturan pelacakan, atau percobaan ulang.