Fuzzing - автоматическая подача случайных входов в функцию. Функция вида func FuzzXxx(f *testing.F), добавление seed-кейсов через f.Add, в цикле f.Fuzz(func(t *testing.T, a, b []byte) { ... }). Запуск: go test -fuzz=FuzzName -fuzztime=30s. Находит краевые случаи и паники.
func FuzzParse(f *testing.F) {
f.Add([]byte("key=value"))
f.Fuzz(func(t *testing.T, data []byte) {
if _, err := Parse(data); err != nil { return }
})
}