Тестирование в Python: nose vs pytest
Published at February 25, 2012 ·
1 min read
Продолжаю сравнивать различные python-библиотеки. На этот раз выбор пал на два тест-фреймворка: nose и pytest. Первый позиционирует себя как unit test framework, второй - как для модульных, так и для функциональных и других тестов. Но так, как грань между модульными, интеграционными и функциональными тестами достаточно тонкая, то ее часто не замечают. Поэтому, эти библиотеки можно использовать для всех вышеперечисленных тестов.
Краткое сравнение функциональности фреймворков (тут я выбрал наиболее важные для меня вещи):
| |nose|pytest
|Репозиторий |https://github.com/nose-devs/nose|https://bitbucket.org/hpk42/pytest/
|Дата последнего изменения|15.02.2012|6.02.2012
|Последняя версия|1.1.3|2.2.3
|Лицензия| |As is
|Документация| +, подробная, легко разобраться|+, подробная, легко разобраться
|Запуск определенного набора тестов|+|+
|Генерация отчета в формате xUnit|+|+
|Настройка детализации отчетов |+|
|Изменение стандартного наименования||+
|Поддержка fixtures|fixeures, setup* и *teardown методы|+, parametrized tests
|Интеграция с django|+, сторонний плагин|+, сторонний плагин
|Соответствие PEP8 |+|+
|Расширяемость|+, механизм плагинов|+, механизм плагинов
|Интеграция с setuptools |+ |+/-
...