С Go 1.18 fuzzing встроен в стандартный тулчейн. Пишешь func FuzzXxx(f *testing.F), добавляешь seed corpus через f.Add(), потом f.Fuzz(func(t *testing.T, data []byte){...}). Go автоматически генерирует входные данные и ищет crashes. Запускаешь go test -fuzz=FuzzXxx. Найденные баги сохраняются в testdata/fuzz/.
Как работает fuzzing в Go?
Middle+
271 просмотровAFK Offer AI
Что делать при panic в production?