Heim > Backend-Entwicklung > Golang > Wie kann ich Go-Tests selektiv ausführen und bestimmte Pakete oder Verzeichnisse ausschließen?

Wie kann ich Go-Tests selektiv ausführen und bestimmte Pakete oder Verzeichnisse ausschließen?

Susan Sarandon
Freigeben: 2024-12-15 21:17:14
Original
309 Leute haben es durchsucht

How Can I Selectively Run Go Tests and Exclude Specific Packages or Directories?

Selektives Testen: Pakete in Go überspringen

Beim Ausführen von Testsuiten kann es vorkommen, dass Sie bestimmte Pakete oder Verzeichnisse ausschließen möchten Testen. In Go ist es möglich, die zu testenden Pakete direkt über die Befehlszeile anzugeben.

Angenommen, Sie haben eine Projektstruktur wie diese:

mypackage
mypackage/net
mypackage/other
mypackage/scripts
Nach dem Login kopieren

Um nur das mypackage zu testen , mypackage/other und mypackage/net-Pakete unter Ausschluss von mypackage/scripts können Sie Folgendes verwenden Befehl:

go test import/path/to/mypackage import/path/to/mypackage/other import/path/to/mypackage/net
Nach dem Login kopieren

Alternativ können Sie, wenn Ihre bevorzugte Shell-Syntax dies zulässt, die folgende Abkürzung verwenden:

go test import/path/to/mypackage{,/other,/net}
Nach dem Login kopieren

Ein anderer Ansatz besteht darin, go list zu verwenden, das eine Liste von Paketen zurückgibt Übereinstimmung mit einem vorgegebenen Muster. Sie können diese Ausgabe an einen Befehl wie grep weiterleiten und die Pakete herausfiltern, die Sie nicht testen möchten, etwa so:

go test `go list ./... | grep -v directoriesToSkip`
Nach dem Login kopieren

In Fällen, in denen der Grund für das Überspringen von Tests darin besteht, die Laufzeit zu optimieren, wird der Test durchgeführt Funktionen selbst können testen.Short() überprüfen und mit t.Skip() entscheiden, ob übersprungen werden soll. Dies ermöglicht selektive Tests beim Aufruf von go test -short.

Das obige ist der detaillierte Inhalt vonWie kann ich Go-Tests selektiv ausführen und bestimmte Pakete oder Verzeichnisse ausschließen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage