Maison  >  Article  >  développement back-end  >  Utiliser le ginkgo avec différentes versions de go

Utiliser le ginkgo avec différentes versions de go

WBOY
WBOYavant
2024-02-08 23:15:331074parcourir

在不同的 go 版本中使用 ginkgo

l'éditeur php Baicao vous présente comment utiliser Ginkgo dans différentes versions de Go. Ginkgo est un puissant framework de test du langage Go qui fournit des fonctionnalités riches et une syntaxe flexible, rendant l'écriture et l'exécution de tests plus faciles et plus efficaces. Cependant, dans les différentes versions de Go, en raison des changements de syntaxe et d'API, vous pouvez rencontrer des problèmes lors de l'utilisation de Ginkgo. Cet article vous fournira des solutions pour vous aider à utiliser avec succès Ginkgo dans différentes versions de Go et à rendre votre travail de test plus fluide. Que vous soyez débutant ou développeur expérimenté, vous obtiendrez des conseils et astuces pratiques dans cet article.

Contenu de la question

J'utilise plusieurs versions de go comme décrit dans ce document https://go.dev/doc/manage-install

go install golang.org/dl/go1.10.7@latest
go1.10.7 download

J'utilise aussi du ginkgo, je l'ai installé comme ceci : (basé sur https://onsi.github.io/ginkgo/#installing-ginkgo)

go install github.com/onsi/ginkgo/v2/ginkgo@latest

Je peux exécuter la suite de tests de ginkgo comme ceci :

ginkgo ./...

Cependant, cela utilise ma version go principale. Je souhaite utiliser ginkgo pour tester une autre version de go. Actuellement, le mieux que je puisse faire est de faire des tests de ginkgo en utilisant go test

go1.10.7 test ./...

Puis-je faire en sorte que nginkgo utilise une version différente de go à des fins de test ?

nginkgo 使用不同版本的 go 进行测试吗?

解决方法

根据他们的源代码,他们只使用命令 ”go”Solution

    Selon leur code source, ils utilisent uniquement la commande "go", vos options sont donc :
  1. go 重命名为 go.bak,然后将 go.10.7 重命名为 go(例如使用 mv
  2. Temporairement
  3. )
  4. Ouvrez une pull request pour permettre la prise en charge du remplacement du chemin d'accès à l'exécutable go (par exemple via des variables d'environnement)
Faites ce que vous faites maintenant

Source :

https://github.com/onsi/ginkgo/blob/master/ginkgo/internal/compile.go

🎜Code associé : 🎜
func CompileSuite(suite TestSuite, goFlagsConfig types.GoFlagsConfig) TestSuite {

    ...

    cmd := exec.Command("go", args...)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer