La Force de retester ou désactiver le test de mise en cache
Problème:
Quand je lance le même aller tester deux fois la deuxième manche n'est pas fait du tout. Les résultats sont mis en cache ceux de la première course.
PASS
ok tester/apitests (cached)
Liens
J'ai déjà vérifié https://golang.org/cmd/go/#hdr-Testing_flags mais il n'y a pas de cli pavillon à cette fin.
Question:
Est-il une possibilité de la force d'aller de test de toujours lancer le test et ne pas mettre en cache des résultats de test.
OriginalL'auteur l1am0 | 2018-02-20
Vous devez vous connecter pour publier un commentaire.
Il ya quelques options comme décrit dans la les tests de drapeaux docs:
go clean -testcache
: expire tous les résultats de test-count=1
Cela dit, des changements dans votre code ou le code de test entraînera la nullité de la mise en cache des résultats de test (il y en a étendu la logique lors de l'utilisation de fichiers locaux ou des variables d'environnement en tant que bien), alors vous ne devriez pas besoin d'invalider le test le cache manuellement.
est-il possible de nettoyer le cache pour des tests spécifiques?
Notez que
go clean -testcache ./...
fonctionne aussi (au sommet d'une monorepo)OriginalL'auteur Marc
Il y a aussi
GOCACHE=off
mentionné ici.go 1.11
et de devoir aller les modules de fonction sur l'utilisation deGOCACHE=off
donne une erreurgo: cannot use modules with build cache disabled
. Le mieux est d'utiliser suggéré-count 1
.Vous avez raison, selon github.com/golang/go/issues/26809#issuecomment-410477084
GOCACHE
sera lentement progressive en aller 1.12 donc à l'aide d'go test -count=1 ...
est choix plus sûr maintenant.OriginalL'auteur soltysh
La façon que j'ai corrigé ça (je suis en utilisant le Code de Visual Studio sur macOS):
Code > Préférences > Paramètres
Cliquez sur
...
sur le côté droit de la page des paramètres deCliquez sur
Open settings.json
:
Ajouter l'extrait de code suivant vos paramètres.fichier json
go.testEnvVars
à inclure les éléments suivants:"GOCACHE": "off"
OriginalL'auteur distortedsignal
Dans Go11, je ne pouvais pas désactiver le cache à l'aide de
GOCACHE
avec des modules, j'ai utilisé-count=1
à la place:Avant Go11:
Ou, propre test de cache et d'exécuter de nouveau le test de:
OriginalL'auteur msoliman