Menghuraikan Argumen Baris Perintah dalam "ujian" Go
Apabila menggunakan arahan "go test", fungsi utama aplikasi anda bukanlah digunakan, membuatkan pembangun tertanya-tanya cara mengendalikan hujah baris arahan dalam ujian.
Walaupun mungkin untuk menggunakan flags pakej dan semak hujah dalam setiap ujian atau fungsi, pendekatan ini menyusahkan, memerlukan pengulangan yang meluas.
Untuk senario tertentu, memintas ketulenan ujian unit dan menghantar hujah melalui baris arahan mungkin merupakan penyelesaian yang boleh diterima, kerana ia menawarkan faedah seperti mengelakkan pergantungan pada pembolehubah persekitaran dan menyediakan fleksibiliti berfungsi.
Satu kaedah melibatkan penentuan init() berfungsi dalam fail _test. Apabila suite ujian dilaksanakan, fungsi ini akan digunakan dan memulakan pembolehubah berdasarkan argumen baris arahan, mensimulasikan gelagat fungsi utama apabila aplikasi dijalankan secara langsung.
Sebagai alternatif, jika pakej flags adalah perlu keperluan, kod permulaan boleh diletakkan dalam fungsi init() di dalam struct testing.t. Ini membolehkan penghuraian bendera berlaku sebelum pelaksanaan kes ujian.
Contohnya:
func init() { flag.Parse() envSetting = flag.String("env", "", "Environment setting") }
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menghuraikan Argumen Baris Perintah dalam Ujian Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!