Выбор ответа Junior Тесты, бенчмарки и модули обновлено
Кеш результатов go test
Вопрос
Вы перезапускаете go test ./... без изменений и видите (cached). Как заставить тесты реально выполниться?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: go test -count=1 ./... -count=1 отключает кеш результатов тестов. -v только меняет вывод. -run . тоже кешируемый флаг. go clean -modcache удаляет скачанные модули, а не кеш тестов (тот чистится go clean -testcache).
Варианты ответа
go test -v ./...go test -run . ./...go test -count=1 ./...правильный ответgo clean -modcache
Разбор
-count=1 отключает кеш результатов тестов. -v только меняет вывод. -run . тоже кешируемый флаг. go clean -modcache удаляет скачанные модули, а не кеш тестов (тот чистится go clean -testcache). Кеш учитывает исходники, флаги, переменные окружения и файлы, которые тест открывал.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.
Ещё по теме «Тесты, бенчмарки и модули»
- Minimal version selection как в Go modules
- Упрощённый go mod tidy: лишние и недостающие модули
- Сортировка версий по Semantic Versioning на Go
- Что выведет Go: табличный прогон без testing
- testing.B.Loop в Go 1.24
- Что показывает -benchmem
- t.Errorf и t.Fatalf
- Команда запуска тестов с детектором гонок