Что такое property-based testing в Go?

Middle+
154 просмотров
AFK Offer AI

Property-based testing проверяет не конкретные примеры, а свойства: "для любого x, reverse(reverse(x)) == x". В Go есть gopter и rapid библиотеки. Генератор создаёт рандомные входные данные, ты проверяешь инварианты. Встроенный fuzzing — это по сути тоже property-based, но с фокусом на crash-поиск.

Следующий вопрос

Как обеспечить exactly-once delivery в distributed системе?