Получи случайную криптовалюту за регистрацию!

Одними из популярных иллюстраций тестирования с помощью свойст | Протестировал

Одними из популярных иллюстраций тестирования с помощью свойств (aka PBT) являются примеры с тестированием арифметических свойств: коммутативность, дистрибутивности, ассоциативности. В Питоне есть набор специальных методов, которые тоже можно реализовать для класса: это арифметические операции (object.__add__(self, other) etc), логические (object.__gt__(self, other)) и т.д. В документации есть их полный список. Вообщем-то как-раз такие, которые можно описать математическими свойствами. Подумал, что таким образом можно нагенерировать тестов для классов в Питоне. Но меня пока только хватило на описание идеи в тикете для Hypothesis - https://github.com/HypothesisWorks/hypothesis/issues/3013 Если под конец лета у вас найдётся свободный денёк, то авторы Hypothesis будут рады увидеть патчи с реализацией идеи. И вообщем-то идея может найти применение и не только для PBT библиотеки в Питоне, для Lua есть тоже известный набор метаметодов, для которых можно автоматически генерировать тесты.