Вопросы с собеседований по Go и ответы на них.
Учиться у нас: clc.to/iEeaZw
По рекламе: @tproger_sales_bot
Для обратной связи: @proglibrary_feeedback_bot
Наши каналы: https://t.me/proglibrary/9197
Post #1362
1.71K
❓ Как использовать
Контекст автоматически отменяется при завершении теста, в том числе по
Явный таймаут — когда тестируете временно́е поведение:
Базовый контекст —
🐸 Библиотека Go для собеса
context в юнит-тестахt.Context() — основной способ (Go 1.24+):func TestFetch(t *testing.T) {
result, err := Fetch(t.Context(), "https://example.com")
// ...
}Контекст автоматически отменяется при завершении теста, в том числе по
go test -timeout. Не нужен ни defer cancel(), ни ручной WithTimeout.Явный таймаут — когда тестируете временно́е поведение:
ctx, cancel := context.WithTimeout(t.Context(), 500*time.Millisecond)
defer cancel()
Базовый контекст —
t.Context(), не context.Background(). Так контекст остаётся привязан к жизненному циклу теста.🐸 Библиотека Go для собеса
- 👍 5

