Задачи, Статьи, Недельный Python Дайджест, FAQ, Курсы по Python, Видео-уроки, Скринкасты
PyNSK
проект про Python
Просмотр записей в категории Тесты тесты тесты
Тесты тесты тесты: Selenium как инструмент тестирования
Selenium – это проект, в рамках которого разрабатывается серия программных продуктов с открытым исходным кодом. Среди продуктов интересен Selenium WebDriver - это программная библиотека для управления браузерами. WebDriver представляет собой драйверы для различных браузеров и клиентские библиотеки на разных языках программирования, предназначенные для управления этими драйверами.
Тесты тесты тесты: coverage - узнаем сколько процентов кода покрыто тестами
Юнит-тесты хороши, когда покрывают весь ключевой код. Однако если проект чуть больше, чем "Hello, world!", то оценить степень покрытия весьма проблематично. Существуют инструменты, которые помогают это делать. Например - coverage.py - модуль Неда Бачелдера.
Тесты тесты тесты: doctest
Модуль doctest ищет куски текста, которые выглядят как интерактивные сессии Python и затем выполняет эти сессии, чтобы проверить, что они работают точно так же, как показано.
Тесты тесты тесты: nose
nose автоматически собирает тесты из файлов вида test_*, достаточно умен, чтобы заглянуть в папочку tests при наличии таковой, умеет измерять покрытие кода (code coverage) при помощи coverage.py (--with-coverage). Также можно запустить только тесты, которые отвалились в последний прогон (--failed).
Тесты тесты тесты: что такое фикстура (fixture)?
Чтобы не приходилось каждый раз вручную создавать подобное состояние программы используются fixture (фикстуры). Фикстуры позволяют сохранить состояние системы в файл, а потом его от туда загрузить.
Тесты тесты тесты: пропускаем тесты в pytest по условию
Тесты не всегда универсальны. Например, в Windows надо дергать одну программу, в Linux другую. Чтобы реализовать такую логику в pytest можно воспользоваться - skipif
Тесты тесты тесты: модуль тестирования py.test
py.test имеет множество расширений, которые значительно упрощают написание тестов. py.test имеет плагины для всех популярных web-фреймворков, с помощью плагинов позволяет кэшеировать результаты (успешных тестов), формировать отчеты в самых различных форматах. А также имеет очень простую систему расширения и вы можете буквально за день написать свой плагин. !embed
Тесты тесты тесты: создание читаемых отчетов
Тесты тесты тесты: создание читаемых отчетов
Имитация файловой системы с помощью mock
Это необходимо, когда пишите тесты на свой код, а этот код использует множество долгих приготовлений: сходить в БД, разобрать данные еще что-то. Вот в этом случае вы можете провести имитацию всех этих долгих приготовлений и сконцентрироваться на написании тестов для своего кода.
Тесты тесты тесты: unittest - основной инструмент тестирования
Это стандартный модуль для реализации юнит-тестов на Python. Unittest это порт JUnit с Java, иными словами ООП стиль, что весьма удобно для тестирования и процедур, и классов.