Jalankan dan Nyahpepijat Ujian Unit dengan Bendera dalam Kod VS
Apabila menjalankan ujian unit dengan bendera dalam Kod VS, pembangun mungkin menghadapi isu yang berkaitan dengan konflik protoregistry. Artikel ini bertujuan untuk menangani masalah ini dengan menyediakan penyelesaian untuk menjalankan dan menyahpepijat ujian dengan bendera tertentu.
Menjalankan Ujian
Untuk menentukan bendera bagi ujian unit dalam Kod VS, navigasi ke halaman Tetapan (Ctrl ,) dan cari "go.testFlags". Tambahkan kod JSON berikut pada tatasusunan:
<code class="json">"go.testFlags": [ "-ldflags", "\"-X google.golang.org/protobuf/reflect/protoregistry.conflictPolicy=warn\"" ]</code>
Ujian Nyahpepijat
Untuk nyahpepijat ujian dengan bendera, konfigurasi yang sedikit berbeza diperlukan. Ubah suai nilai "go.testFlags" dalam fail settings.json seperti berikut:
<code class="json">"go.testFlags": [ "-ldflags", "'-X google.golang.org/protobuf/reflect/protoregistry.conflictPolicy=warn'" ]</code>
Perhatikan penambahan petikan tunggal di sekitar nilai bendera.
Kaedah Nyahpepijat Alternatif
Jika isu bendera berterusan, pertimbangkan untuk menggunakan kaedah penyahpepijatan alternatif. Susun binari ujian dengan arahan berikut:
go test -c -ldflags "-X google.golang.org/protobuf/reflect/protoregistry.conflictPolicy=warn" -gcflags="all=-N -l"
Mulakan sesi dlv dalam mod tanpa kepala dan sambungkan editor anda kepadanya. Tetapkan titik putus dan navigasi panel nyahpepijat untuk pengalaman penyahpepijatan yang terperinci.
Kesimpulan
Dengan melaraskan tetapan "go.testFlags" dalam Kod VS dan mempertimbangkan kaedah penyahpepijatan alternatif, pembangun boleh menjalankan dan menyahpepijat ujian unit secara berkesan dengan bendera, menghapuskan konflik protoregistry dan meningkatkan aliran kerja ujian mereka.
Atas ialah kandungan terperinci Bagaimana Menjalankan dan Menyahpepijat Ujian Unit Dengan Bendera dalam Kod VS Semasa Mengelakkan Konflik Protoregistry?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!