
Алексей Родионов
Toptal
Что делать, когда тесты принципиально не способны находить ошибки, возникающие при необычных состояниях тестируемой системы, обычно называемые «edge cases»? Можно ли увеличить тестовое покрытие и находить больше ошибок, не создавая излишних тестов и не жертвуя временем их выполнения?
В этом докладе мы поговорим о том, как мы столкнулись с этой проблемой в Toptal, начали переход от обычных тестов к тестированию на основе моделей, какие проблемы встретили на этом пути, почему мы используем сети Петри вместо конечных автоматов и что у нас получилось в итоге. Доклад будет проиллюстрирован примерами сетей Петри и множеством Ruby-кода.
Toptal