Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bolehkah Kami Mengadakan Ujian Go dalam Subdirektori?

Bolehkah Kami Mengadakan Ujian Go dalam Subdirektori?

Susan Sarandon
Susan Sarandonasal
2024-11-17 08:16:04311semak imbas

Can We Organize Go Tests in Subdirectories?

Menguji Pakej Go dengan Subdirektori

Dalam bidang pembangunan Go, persoalan biasa timbul: Bolehkah kami mengatur ujian kami dalam subdirektori untuk meningkatkan kebersihan ruang kerja? Artikel ini bertujuan untuk menjelaskan topik ini.

Amalan Pengujian dan Konvensyen Go

Secara tradisinya, dokumentasi Go mengesyorkan meletakkan kod ujian di lokasi yang sama dengan kod pengeluaran. Walaupun ia boleh memudahkan akses kepada ahli program yang tidak dieksport, pendekatan ini boleh mengakibatkan ruang kerja bersepah. Walau bagaimanapun, terdapat cara untuk memisahkan ujian ke dalam subdirektori sambil mengekalkan kebolehaksesan.

Menjalankan Ujian Secara Rekursif

Untuk melaksanakan ujian merentas berbilang subdirektori, anda boleh memanfaatkan ujian "go " perintah dengan notasi "./...". Daripada direktori akar projek, taip yang berikut:

go test ./...

Arahan ini akan merentasi struktur direktori projek secara rekursif, mengenal pasti dan menjalankan semua fail ujian yang ditemuinya.

Pertimbangan Direktori Asingkan

Jika ujian berada dalam direktori berasingan, ia memerlukan perhatian tambahan. Pastikan pembolehubah dan fungsi yang dieksport dalam pakej utama diawali dengan nama pakej. Ini membolehkan fail ujian mengakses kandungan yang dieksport. Selain itu, kandungan yang tidak dieksport akan kekal tidak boleh diakses.

Pakej lwn. Pemisahan Direktori

Walaupun pemisahan direktori membenarkan organisasi yang lebih bersih, mengekalkan fail ujian bersebelahan dengan sumber utama fail kekal sebagai pilihan praktikal untuk lokasi fail yang mudah.

Liputan Kod Sepanjang Masa

Untuk menjana statistik liputan kod agregat untuk projek Go dalam saluran paip CI/CD, gunakan " projek gocoverstats".

Liputan Ujian Penyepaduan

Sehingga Go 1.20, peralatan liputan kini meluas kepada ujian penyepaduan, membolehkan pengumpulan profil daripada suite ujian yang lebih besar.

Pendekatan Pengujian Alternatif

Sebagai alternatif, anda boleh mempertimbangkan untuk mengatur ujian dalam pakej berasingan dan bukannya subdirektori. Fail ujian untuk pakej "foo" boleh berada dalam pakej bernama "foo_test" sementara masih berada dalam direktori yang sama. Pendekatan ini menghalang akses kepada ahli pakej "foo" yang tidak dieksport.

Atas ialah kandungan terperinci Bolehkah Kami Mengadakan Ujian Go dalam Subdirektori?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn