Arbeitsverzeichnis in Go-Tests
In Go ist es üblich, Konfigurationsdateien im Arbeitsverzeichnis abzulegen und im Code darauf zu verweisen. Unit-Tests können diese Dateien jedoch möglicherweise nicht finden, wenn die Testumgebung nicht mit der Produktionsumgebung übereinstimmt.
Um ein Arbeitsverzeichnis für Ihre Go-Tests anzugeben, erkunden Sie die folgende Lösung:
Überlegen Sie Verwenden der Caller-Funktion aus dem Laufzeitpaket. Der Aufrufer übernimmt die aktuelle Testquelldatei und gibt deren Pfad zurück. Dieser Pfad kann verwendet werden, um das Arbeitsverzeichnis für den Test festzulegen:
<code class="go">package sample import ( "testing" "runtime" "os" ) func TestGetDirectory(t *testing.T) { _, filename, _, _ := runtime.Caller(0) dir := filepath.Dir(filename) os.Chdir(dir) // Run tests using configuration files in the modified working directory }</code>
Mit Caller können Sie den Pfad zur aktuellen Testquelldatei abrufen und das Arbeitsverzeichnis entsprechend festlegen. Dadurch können Ihre Tests Konfigurationsdateien im selben Verzeichnis wie den Testcode finden, wodurch die Fehler „Datei nicht gefunden“ behoben werden sollten.
Das obige ist der detaillierte Inhalt vonWie richten Sie das Arbeitsverzeichnis für Ihre Go-Tests ein?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!