Semua use case

Hasilkan Cakupan Tes Otomatis untuk Kode Baru

Zero memindai PR yang di-merge untuk file yang belum diuji, menulis tes mengikuti konvensi Anda, dan membuka PR sehingga Anda memulai setiap hari dengan cakupan yang lebih baik.

Zero terhubung ke:GitHubLinearSlack

Apa yang Zero berikan

Apa masalahnya

Ini Selasa pagi. CI merah - cakupan turun dari 82% ke 79% semalam karena seseorang me-merge fitur baru tanpa tes sama sekali. Lagi. Anda bisa menghentikan pekerjaan, membaca kode mereka, dan menulis tes sendiri. Atau Anda bisa menyuruh Zero melakukannya setiap pagi pukul 4, sehingga saat Anda duduk, sudah ada PR tes menunggu untuk ditinjau.

Bagaimana Zero memperbaikinya

Langkah 1: Hubungkan alat Anda

GitHub
GitHub
Wajib
GitHub - akses baca untuk memindai PR yang di-merge dan file yang berubah. Akses tulis untuk membuka pull request berisi tes yang dihasilkan.
Hubungkan
Slack
Slack
Wajib
Slack - memposting ringkasan tes yang dihasilkan dan hasil CI ke kanal tim Anda.
Hubungkan
Linear
Linear
Opsional
useCases.content.auto-test-coverage.integrations.2.description
Hubungkan

Langkah 2: Tanya Zero

@Zero periksa semua PR yang di-merge dari 24 jam terakhir di vm0-ai/vm0. Untuk setiap file yang berubah dan tidak punya file tes terkait, tulis tes integrasi mengikuti pola pengujian proyek. Buka satu PR berisi semua tes baru.
Zero memindai PR yang di-merge untuk file tanpa cakupan
Zero mengkueri GitHub untuk pull request yang baru di-merge, mendaftar setiap file yang berubah, dan merujuk silang dengan direktori tes Anda. File yang tidak punya file tes terkait ditandai untuk dicakup.
Zero menulis tes mengikuti konvensi proyek Anda
Zero membaca file sumber, memahami antarmuka komponen atau fungsi, memeriksa pola tes Anda yang ada (framework, import, helper, gaya assertion), dan menulis tes yang menyatu - struktur sama, pola sama, standar kualitas sama.
Zero membuka PR dan memposting ringkasan
Semua tes yang dihasilkan mendarat dalam satu pull request dengan deskripsi jelas tentang apa yang dicakup. Zero memposting tabel ringkasan ke Slack yang menunjukkan file mana yang mendapat tes dan berapa banyak. CI berjalan otomatis, dan Zero menindaklanjuti dengan hasilnya.

Langkah 3: Lanjutkan lebih jauh

Tinjau dan merge PR tes
Periksa tes yang dihasilkan dan merge jika terlihat baik.
@Zero bagaimana status CI di PR tes #10153?
Kecualikan file yang dihasilkan atau konfigurasi
Beri tahu Zero file mana yang dilewati agar fokus pada cakupan yang bermakna.
@Zero saat membuat cakupan tes otomatis, lewati file apa pun di generated/, *.d.ts, dan file konfigurasi
Jadikan rutin
Jadwalkan pembuatan tes harian agar cakupan tak pernah merosot lagi.
@Zero setiap hari pukul 4 pagi, pindai perubahan yang di-merge tanpa tes, tulis tesnya, dan buka PR

Tips untuk hasil yang lebih baik

Jelaskan secara eksplisit framework dan pola tes Anda - "gunakan vitest dengan @testing-library/react, ikuti pola arrange-act-assert" menghasilkan output yang jauh lebih baik.
Jalankan semalaman agar PR tes siap ditinjau saat tim mulai kerja. Pukul 4 pagi adalah default yang baik - berjalan setelah merge larut malam.
Rangkai dengan tech-debt-scan untuk kesehatan kode menyeluruh: tech debt menangkap anti-pattern, auto-test-coverage menangkap celah, bersama-sama keduanya menjaga basis kode tetap bersih.