Bagaimana untuk Menetapkan Direktori Kerja untuk Ujian Go dengan Betul?

Linda Hamilton
Lepaskan: 2024-10-31 03:57:02
asal
851 orang telah melayarinya

How to Correctly Set the Working Directory for Go Tests?

Menyelesaikan Isu Direktori Kerja dalam Go Tests

Dalam Go, ujian unit boleh menghadapi cabaran apabila mengakses fail konfigurasi yang terdapat dalam direktori kerja tertentu. Artikel ini menangani isu sedemikian dan meneroka cara untuk membimbing arahan go test untuk menggunakan direktori kerja yang diingini untuk pelaksanaan ujian.

Pertimbangkan situasi berikut: Ujian unit aplikasi Go bergantung pada fail konfigurasi yang terdapat dalam conf/* .conf. Walau bagaimanapun, apabila melaksanakan ujian ini, mereka gagal kerana perduaan tidak dapat mengesan fail konfigurasi.

Untuk menyelesaikan isu ini, mungkin kelihatan intuitif untuk menavigasi ke direktori yang mengandungi direktori conf/ dan melaksanakan ujian go. Walau bagaimanapun, pendekatan ini sering gagal. Untuk memastikan bahawa ujian dilaksanakan dalam direktori kerja yang betul, Go menawarkan mekanisme khusus:

Menggunakan Fungsi Pemanggil

Pakej masa jalan dalam Go menyediakan fungsi dipanggil Pemanggil yang boleh mendapatkan maklumat tentang sumber fail yang memanggilnya. Maklumat ini termasuk nama fail dan laluan:

<code class="go">package sample

import (
    "testing"
    "runtime"
    "fmt"
)

func TestGetFilename(t *testing.T) {
    _, filename, _, _ := runtime.Caller(0)
    t.Logf("Current test filename: %s", filename)
}</code>
Salin selepas log masuk

Dengan menggunakan teknik ini, kami boleh mencari direktori yang mengandungi fail konfigurasi dan menghantar maklumat tersebut untuk pergi ujian untuk menetapkan direktori kerja untuk pelaksanaan ujian.

Atas ialah kandungan terperinci Bagaimana untuk Menetapkan Direktori Kerja untuk Ujian Go dengan Betul?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!