Ответ
Да, писал unit-тесты в Go с использованием стандартного пакета testing и библиотек вроде testify для удобных assert'ов. Пример простого теста:
func TestSum(t *testing.T) {
tests := []struct {
name string
a, b int
want int
}{
{"positive", 2, 3, 5},
{"negative", -1, -1, -2},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
got := Sum(tt.a, tt.b)
assert.Equal(t, tt.want, got)
})
}
}
Использовал table-driven тесты для покрытия разных кейсов, моки (например, gomock) для изоляции зависимостей, и стремился к 80%+ coverage. Также применял тестирование конкурентных операций с -race.