Heim > Backend-Entwicklung > Golang > Wie kann ich die Go-Testausführung anpassen, um bestimmte Pakete und Unterverzeichnisse einzuschließen oder auszuschließen?

Wie kann ich die Go-Testausführung anpassen, um bestimmte Pakete und Unterverzeichnisse einzuschließen oder auszuschließen?

Patricia Arquette
Freigeben: 2024-11-30 19:44:14
Original
356 Leute haben es durchsucht

How Can I Customize Go Test Execution to Include or Exclude Specific Packages and Subdirectories?

Testausführung anpassen: Bestimmte Pakete überspringen

Go Test bietet Flexibilität bei der Auswahl von Paketen zum Testen. Während die Ausführung von go test für jedes Paket einzeln eine Option ist, ist es effizienter, die Ausführung so anzupassen, dass nur gewünschte Pakete einbezogen werden.

Testen spezifischer Unterverzeichnisse

Im bereitgestellten Verzeichnisstruktur können Sie bestimmte Unterverzeichnisse testen, indem Sie deren Importpfade explizit in der Befehlszeile auflisten:

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

Alternativ für Paketpfade Beginnend mit einem gemeinsamen Präfix kann eine Klammererweiterung verwendet werden:

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

Go-Liste als Argument verwenden

Sie können Go-Liste verwenden, um eine Liste von Paketen zu generieren als Argumente für den Go-Test:

go test `go list`
Nach dem Login kopieren

Überspringen Unterverzeichnisse

Um ein Unterverzeichnis wie „mypackage/scripts“ auszuschließen, verwenden Sie grep, um unerwünschte Pfade herauszufiltern:

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

Bedingtes Überspringen von Tests

Lange oder teure Tests können innerhalb der Tests selbst mit Hilfe von testing.Short() und t.Skip() bedingt übersprungen werden. Dadurch können bestimmte Tests über Befehle übersprungen werden wie:

go test -short import/path/to/mypackage/...

(within mypackage directory)
go test -short ./...
Nach dem Login kopieren

Benutzerdefinierte Bedingungen außer Testen.Short() kann auch das Überspringen von Tests auslösen und bietet so Flexibilität bei der Steuerung der auszuführenden Tests.

Das obige ist der detaillierte Inhalt vonWie kann ich die Go-Testausführung anpassen, um bestimmte Pakete und Unterverzeichnisse einzuschließen oder auszuschließen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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