Назад к вопросам
Junior — Middle
78
Каким образом осуществляется написание модульных и интеграционных тестов в языке Go?
Ответ от нейросети
sobes.tech AI
В Go для написания модульных и интеграционных тестов используется пакет testing.
- Модульные тесты проверяют отдельные функции или методы изолированно.
- Интеграционные тесты проверяют взаимодействие нескольких компонентов или работу с внешними ресурсами.
Пример модульного теста:
package mypackage
import "testing"
func TestSum(t *testing.T) {
got := Sum(2, 3)
want := 5
if got != want {
t.Errorf("Sum(2, 3) = %d; want %d", got, want)
}
}
Для интеграционных тестов можно использовать отдельные файлы с суффиксом _integration_test.go и запускать их отдельно, например, с флагом -tags=integration.
Также часто используют мок-объекты или тестовые базы данных для имитации внешних зависимостей.
Запуск тестов:
go test ./... # Запуск всех тестов
Таким образом, Go предоставляет простой и встроенный механизм для написания и запуска тестов.