Menguji Bendera Baris Perintah Tersuai dalam Ujian Unit Go
Dalam aplikasi Go modular dengan ujian unit, menetapkan bendera baris arahan tersuai untuk ujian tertentu boleh membuktikan mencabar. Menggunakan pakej bendera untuk menetapkan bendera dalam permulaan ujian boleh mengakibatkan ralat semasa menjalankan ujian.
Masalah
Apabila melaksanakan arahan ujian:
go test -test.v ./... -gamedir.custom=c:/resources
ralat berikut mungkin berlaku:
flag provided but not defined: -gamedir.custom
Ralat ini menunjukkan bahawa -gamedir.custom flag tidak diiktiraf oleh ujian boleh laku.
Analisis
Isu timbul kerana arahan go test menjalankan semua ujian dalam ruang kerja, menggunakan yang disediakan bendera kepada mereka semua. Walau bagaimanapun, jika ujian tertentu tidak menggunakan bendera -gamedir.custom, pelaksanaan ujian akan gagal dengan ralat bendera yang tidak ditentukan.
Penyelesaian
Untuk menyelesaikan masalah ini , anda boleh menjalankan ujian go secara berasingan untuk setiap ujian yang boleh dilaksanakan, dengan menyatakan bendera yang sesuai untuk setiap ujian. Ini boleh dilakukan dengan mengubah suai arahan untuk lulus ujian boleh laku secara terus:
go test -test.v ./path/to/test.go -gamedir.custom=c:/resources
Pendekatan ini memastikan bahawa hanya boleh laku ujian yang ditentukan menerima bendera -gamedir.custom, menyelesaikan ralat bendera yang tidak ditentukan.
Atas ialah kandungan terperinci Bagaimana untuk Menguji Bendera Baris Perintah Tersuai dengan Betul dalam Ujian Unit Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!