Befehlszeilenargumente in Go-Tests abrufen
Beim Ausführen von Tests mit go test wird die Hauptfunktion nicht ausgeführt. Dies wirft die Frage auf, wie in Testfällen auf Befehlszeilenargumente zugegriffen werden kann.
Ein gängiger Ansatz besteht darin, das Flags-Paket zu verwenden und in jedem Test oder jeder Funktion manuell nach Argumenten zu suchen. Allerdings kann diese Methode mit zunehmender Anzahl der Tests mühsam und fehleranfällig werden.
Stattdessen ist es möglich, Umgebungsvariablen oder Initialisierungsfunktionen zu verwenden, um in Tests auf Befehlszeilenargumente zuzugreifen.
Umgebungsvariablen
Umgebungsvariablen bieten eine bequeme Möglichkeit, Konfigurationsdaten an Testumgebungen zu übergeben. Um in einem Test auf eine Umgebungsvariable zuzugreifen, verwenden Sie einfach die Funktion os.Getenv:
envSetting := os.Getenv("TEST_ENV")
Initialisierungsfunktionen
Alternativ können Sie eine festzulegende Initialisierungsfunktion definieren globale Variablen basierend auf Befehlszeilenargumenten. Die Funktion init() wird vor allen Testfällen ausgeführt und eignet sich daher ideal für Initialisierungszwecke:
func init() { flags.Parse() myEnv = *envFlag }
Durch die Verwendung dieser Techniken können Sie in Go-Tests effektiv auf Befehlszeilenargumente zugreifen und die Trennung zwischen Test und Main aufrechterhalten Funktionalität.
Das obige ist der detaillierte Inhalt vonWie kann ich in Go-Tests auf Befehlszeilenargumente zugreifen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!