Что такое TestMain? Когда использовать?

Ответ

TestMain(m *testing.M) - точка входа для набора тестов в пакете. Вызывается один раз; внутри можно выполнить setup/teardown (поднять БД, замокать конфиг), затем os.Exit(m.Run()). Используют для глобальной инициализации и очистки.

func TestMain(m *testing.M) {
    setup()
    code := m.Run()
    teardown()
    os.Exit(code)
}
🧠Квиз 🏆Лидеры 🎯Собесед. 📖Вопросы 📚База зн.