Heim >Backend-Entwicklung >Golang >Warum zeigt „go test' trotz definierter Funktionen „Keine auszuführenden Tests' an?
Fehlerhafte Benennung der Testfunktion
Obwohl Sie eine Testfunktion definiert haben, wird Ihnen beim Ausführen von go test die Meldung „Keine Tests zum Ausführen“ angezeigt . Lassen Sie uns die Ursache dieses Problems untersuchen.
Das Go-Testpaket erwartet, dass Testfunktionen einer bestimmten Namenskonvention entsprechen. Gemäß der offiziellen Dokumentation:
func TestXxx(t *testing.T) { ... }
In Ihrem Fall heißt die Testfunktion testNormalizePhoneNum, was nicht der oben genannten Konvention entspricht. Der erste Buchstabe des Funktionsnamens muss ein Großbuchstabe sein („T“).
Lösung:
Um dieses Problem zu beheben, benennen Sie Ihre Testfunktion einfach in TestNormalizePhoneNum um (Großschreibung). das „T“). Sobald Sie diese Änderung vorgenommen haben, sollte die Ausführung von go test Ihre Testfälle erfolgreich ausführen.
Alternative Methode:
Alternativ können Sie das Testpaket zwingen, Ihr Non auszuführen -Konventionell benannte Testfunktion unter Verwendung des Flags -run:
go test -run=testNormalizePhoneNum
Mit diesem Flag können Sie den Namen der Testfunktion (oder einen dazu passenden regulären Ausdruck) angeben Name), den Sie ausführen möchten. Dieser Ansatz wird jedoch im Allgemeinen nicht für Routinetestzwecke empfohlen.
Das obige ist der detaillierte Inhalt vonWarum zeigt „go test' trotz definierter Funktionen „Keine auszuführenden Tests' an?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!