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?

Patricia Arquette
Freigeben: 2024-12-13 07:45:11
Original
546 Leute haben es durchsucht

How Can I Skip Go Tests Based on Go Version?

Überspringen von Tests basierend auf der Go-Version mithilfe von Build-Einschränkungen

Sie möchten verhindern, dass bestimmte Tests auf Systemen ausgeführt werden, auf denen Go-Versionen vor 1.5 fällig sind zur Abhängigkeit von Paketen, die in diesen Versionen nicht verfügbar sind. „runtime.Version()“ kann verwendet werden, um die Go-Version zu ermitteln, aber Ihr Ansatz mit „build go1.5“ am Anfang der Datei hat das Problem nicht behoben.

Die geeignete Lösung ist um die Build-Einschränkungen von Go zu nutzen, um den Umfang Ihrer Testdatei einzuschränken. Die Build-Einschränkung „// build go1.6“ gibt an, dass die Datei nur kompiliert wird, wenn Go Version 1.6 und höher verwendet wird. Dadurch werden Systeme, auf denen Go 1.4 und niedriger ausgeführt wird, vom Erstellen und Testen dieser speziellen Testdatei ausgeschlossen.

Es ist wichtig, die Abhängigkeit vom Paket „golang.org/x/net/http2“ zu berücksichtigen, das bei Go verfügbar ist 1.6. Daher gewährleistet die Verwendung von „build go1.6“ die Kompatibilität sowohl mit der Paketabhängigkeit als auch mit dem gewünschten Go-Versionskriterium.

Denken Sie daran, dass Build-Einschränkungen oben in der Datei erscheinen sollten, denen nur Leerzeilen und Zeilenkommentare vorangestellt sind . Darüber hinaus muss auf eine Reihe von Build-Einschränkungen eine Leerzeile folgen, um sie von der Paketdokumentation zu unterscheiden.

Hier ist ein funktionierendes Beispiel:

// +build go1.6

package yourpackage
Nach dem Login kopieren

In diesem Beispiel wird die Testdatei sein Gebaut und getestet nur auf Systemen mit Go Version 1.6 oder höher.

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!

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