Umgang mit gemeinsam genutztem Testcode in Go-Paketen mit mehreren Dateien
In Go-Paketen mit mehreren Dateien ist es üblich, für jede einzelne separate Testdateien zu erstellen Quelldatei. Dies kann jedoch zu einer Codeduplizierung führen, wenn die Tests gemeinsame Hilfsfunktionen erfordern.
Die Lösung: Verwendung gemeinsamer Testpaket-Identifikatoren
Um eine Codereplikation zu vermeiden, ermöglicht Go Tests Dateien innerhalb derselben Paketklausel können ohne explizite Importanweisungen auf die exportierten und nicht exportierten Bezeichner des jeweils anderen verweisen. Dies bedeutet, dass Sie gemeinsam genutzten Testcode in jede der Testdateien einfügen können und dieser für alle anderen Testdateien innerhalb desselben Pakets zugänglich ist.
Beispielstruktur
Betrachten Sie ein Paket mit den folgenden Dateien:
mypackage/ mypackage.go mypackage_test.go helper_test.go
Sie können gemeinsame Testhilfsfunktionen in helper_test.go definieren, ohne den Produktionscode zu verschmutzen.
Erklärung
Auch wenn helper_test.go nicht direkt in mypackage_test.go importiert wird, gehört es aufgrund der passenden Paketklausel (Paket mypackage_test) dennoch zum selben Testpaket. Dadurch kann mypackage_test.go auf die in helper_test.go deklarierten Bezeichner zugreifen und so die gemeinsame Nutzung von Code und die Wartbarkeit von Tests ermöglichen.
Zusätzliche Hinweise
Das obige ist der detaillierte Inhalt vonWie kann ich die Duplizierung von Testcode in Go-Paketen mit mehreren Dateien vermeiden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!