Имеет ли в Python модульный модуль тестирования, совместимый со стандартным xUnit-интерфейсом тестовой среды? Если да, то что это, где оно, и хорошо ли это?Модульные тесты в Python
ответ
Python имеет несколько испытательных рамок, включая unittest
, doctest
и nose
. Самый xUnit-подобный - unittest
, который документирован на Python.org.
Там в testoob который довольно полный набор test.Also XUnit-то есть, и имеет хороший вариант отчетности
Существует также PyUnit, которые могли бы быть то, что ты ищешь.
@Greg: PyUnit входит в стандартную библиотеку, как unittest
Рассмотрим py.test. Не совсем аналогично NUnit, но очень хорошо, с хорошими функциями, включая автоматическое обнаружение тестов и «Наблюдение за тестами и кодом», - когда что-то меняется, перезапускают тесты, которые потерпели неудачу в последний раз. Как только все тесты пройдут, переключитесь на запуск всех тесты, когда что-то меняется ». вариант.
Никогда не использовал xUnit, поэтому я не могу сказать вам, являются ли рамки хорошими/плохими сравнительно, но here - это сценарий, который я написал, который использует фреймворк unittest (чтобы проверить API работает так, как он должен), и доктрист (чтобы проверить примеры, которые я дал работе)
Моя единственная проблема - проверка чего-то вызывает исключение, слегка запутанное (вам нужно передать ему функцию/лямбда, которая вызывает исключение, а не только сама команда, например остальная часть структуры). Помимо этого, он делает то, что он должен, надежно, и он был включен в дистрибутив python по умолчанию довольно долгое время.
Я рекомендую nose.
Это самый Pythonic модульных тестовых фреймворков. Тест-бегун запускает как доктрины, так и unittests, поэтому вы можете использовать любой стиль теста, который вам нравится.
Я рекомендую Нос.
После разумной простой установки вам просто нужно запустить «nosetests» в папке проекта, а Nose найдет все ваши тесты и запустит их. Мне также нравится коллекция плагинов (покрытие, GAE и т. Д.) И способность звонить Nose непосредственно из моих сценариев Python.
Нос кажется лучшим сочетанием гибкости и удобства. Он запускает unittests, doctests, охват (с расширением) и py.test-подобные тесты из одной структуры и делает это превосходно. У него достаточно популярность, что у нее была интегрированная интеграция IDE для Komodo Edit, и я не удивлюсь, увидев ее в другом месте.
Мне это нравится по одной серьезной причине: я почти всегда учусь, прежде чем писать более обширные тесты в другой структуре. Это потому, что для базовых тестов доктрины убивают двух зайцев одним камнем. Вы получаете исполняемые тесты (хотя они немного неуклюжи, чтобы писать хорошо иногда), а также документацию API и интерактивную документацию одновременно. нос будет запускать их с добавленным расширением доктрины, когда вы используете опцию командной строки (--with-doctest).
Я говорю, что это произошло из py.test как мой бывший фаворит. Хотя это здорово, тесты на нос настолько похожи на меня, что я не скучаю по нему, и мне нравится интеграция различных тестовых методик под одной крышей, так сказать. YMMV, но я рекомендую внимательно посмотреть на нос, прежде чем выбрать другой. Если вы не знакомы с испытаниями py.test, вы также должны посмотреть на них. Я нахожу их потрясающими, потому что они обычно пишутся таким образом, что их можно легко отлаживать без рамки тестирования, которая делает менее сложную систему, участвующую в сеансе отладки. Я считаю, что это бесценно, в то время как они также легче писать, чем тесты unittest, на мой взгляд.
- 1. Модульные тесты Python: TestCaseSource
- 2. Параллельные модульные тесты в python
- 3. PrestaShop Модульные модульные тесты
- 4. Моты не попадают в модульные тесты Python
- 5. Исключить модульные тесты из покрытия в python
- 6. Где импортировать библиотеки в модульные тесты? Python
- 7. Модульные тесты и вывод терминалов в Python?
- 8. Модульные тесты в TDD
- 9. Модульные тесты в golang
- 10. Модульные тесты в java
- 11. Модульные тесты Perfom python через веб-интерфейс
- 12. Модульные тесты и функциональные тесты в CodeIgniter
- 13. Модульные тесты Контроллеры MVC
- 14. Зависимые модульные тесты
- 15. Модульные тесты сервлета
- 16. Модульные тесты Cocoapods
- 17. игнорировать модульные тесты C++
- 18. Модульные тесты и приборы
- 19. Модульные тесты MongoDB
- 20. EntityFunctions.TruncateTime и модульные тесты
- 21. Модульные тесты Visual Studio
- 22. Когда запускать модульные тесты?
- 23. Модульные тесты всегда прерваны
- 24. Модульные тесты с NSURLSession
- 25. Akka.net и модульные тесты
- 26. xcode 4.3 модульные тесты
- 27. Модульные тесты Guava EventBus
- 28. Как найти модульные тесты
- 29. Пробные и модульные тесты
- 30. Модульные тесты Django mock
Ссылка на нос мертва. – pefu 2016-03-06 13:35:26