Генераторы данных в Kotest
В Kotest, широко применяемом для написания автоматизированных тестов на Kotlin, существует несколько типов генераторов данных. Давайте вкратце их рассмотрим.
Список основных типов не является большим:
- Arb (Arbitrary — случайный). Обеспечивает генерацию бесконечных последовательностей, из которых по дефолту в тесте будет применяться тысяча значений.
- Exhaustive (исчерпывающий). Выполняет полный перебор ограниченного числа значений.
Вообще, вы можете найти полный перечень генерируемых типов -- на самом деле, он достаточно велик и неплохо описан в официальной документации.
Зачем они нужны?
Главная задача генераторов — предоставить возможность по запуску Property-тестов на их основе. Есть и другая задача, являющаяся второстепенной, — генерация единичных значений. Кроме того, генераторы предоставляют широкий набор методов по модификации и настройке генерируемой последовательности.
Ниже -- пример использования Arb-генераторов для генерации случайных данных в Data-Driven тестах:
Источник: https://habr.com/ru/users/kochetkov-ma/.