Heim >Backend-Entwicklung >Golang >Wie kann ich Go-Tests basierend auf der Go-Version überspringen?

Wie kann ich Go-Tests basierend auf der Go-Version überspringen?

Susan Sarandon
Susan SarandonOriginal
2024-12-11 03:16:14325Durchsuche

How Can I Skip Go Tests Based on the Go Version?

Tests basierend auf der Go-Version in Testdateien überspringen

Sie haben eine Testdatei, die Go 1.5 erfordert, aber ein Paket importiert (golang.org /x/net/http2), das request.Cancel() von net/http erfordert, was nur in Go 1.5 verfügbar ist. Um dieses Problem zu beheben, verwenden Sie Build-Einschränkungen, um die Kompilierung und Ausführung der Testdatei auf Go 1.5-Systeme zu beschränken.

Build-Einschränkungen sind Anweisungen, die am Anfang einer Datei platziert werden und die Bedingungen angeben, unter denen diese Datei sein soll gebaut. In Ihrem Fall können Sie die folgende Build-Einschränkung am Anfang Ihrer Testdatei hinzufügen:

// +build go1.5

Diese Einschränkung weist den Compiler an, die Datei nur dann in den Build einzuschließen, wenn Go 1.5 oder höher verwendet wird.

Beachten Sie jedoch, dass sich die von Ihnen bereitgestellten Fehlermeldungen auf das http2-Paket beziehen, das in Go 1.6 hinzugefügt wurde. Daher sollten Sie die folgende Build-Einschränkung verwenden, um die Kompilierung auf Go 1.6 und höher zu beschränken:

// +build go1.6

Build-Einschränkungen müssen oben in der Datei erscheinen und dürfen nur durch Leerzeilen und Zeilenkommentare vorangestellt werden. Außerdem muss ihnen eine Leerzeile folgen, um sie von der Paketdokumentation zu unterscheiden.

Das obige ist der detaillierte Inhalt vonWie kann ich Go-Tests basierend auf der Go-Version überspringen?. 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