Когда benchmarks лучше не использовать или использовать осторожно?
Что хотят услышать интервьюеры:
Суть: benchmark измеряет производительность функции через пакет testing.
Ответ:
Пример:
func BenchmarkParse(b *testing.B){
for i:=0;
i<b.N;
i++{
Parse(x)
}
} Практический акцент: Оцените trade-off: простота, производительность, тестируемость, связность пакетов и цена поддержки.
Типичная ошибка: делать выводы по одному запуску без контроля аллокаций и внешних факторов.
Как отвечать на собеседовании: На собеседовании связывайте тесты с рисками: чистая логика, HTTP, БД, concurrency, контракты и регрессии.