Problema:
Cuando ejecuto la misma prueba de marcha dos veces, la segunda ejecución no se realiza en absoluto. Los resultados son los almacenados en caché de la primera ejecución.
PASS
ok tester/apitests (cached)
Enlaces
Ya verifiqué https://golang.org/cmd/go/#hdr-Testing_flags pero no hay una bandera cli para ese propósito.
Pregunta:
¿Existe la posibilidad de forzar la prueba para ejecutar siempre la prueba y no almacenar en caché los resultados de la prueba?

go clean -testcache ./...también funciona (en la parte superior de un monorepo)En Go11, no pude deshabilitar el uso de caché
GOCACHEcon módulos, usé en su-count=1lugar:go test -count=1Antes de Go11:
GOCACHE=off go testO bien, limpie la caché de prueba y vuelva a ejecutar la prueba:
go clean -testcache && go testfuente
También se
GOCACHE=offmenciona aquí .fuente
go 1.11y tener la función de módulos go sobre el usoGOCACHE=offda un errorgo: cannot use modules with build cache disabled. Lo mejor es usar sugerido-count 1.GOCACHEse eliminará gradualmente en la versión 1.12, por lo que ahora usarlogo test -count=1 ...es una opción más segura.build cache is disabled by GOCACHE=off, but required as of Go 1.12La forma en que arreglé esto (estoy usando Visual Studio Code en macOS):
Código> Preferencias> Configuración
Haga clic en
...en el lado derecho de la página de configuraciónHacer clic
Open settings.jsonYa sea:
Agregue el siguiente fragmento a su archivo settings.json
"go.testEnvVars": { "GOCACHE": "off" }go.testEnvVarspara incluir lo siguiente:"GOCACHE": "off"fuente
GOCACHEno funcionará con las versiones recientes de Go. Una solución para VS Code es establecer"go.testFlags": ["-count=1"]la configuración.