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
Patricia ArquetteOriginal
2024-11-30 19:44:14357Durchsuche

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

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

go test import/path/to/mypackage{,/other,/net}

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`

Ü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`

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 ./...

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!

Stellungnahme:
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