py.test 2.0.2: исправлены ошибки, улучшены выражения xfail/skip, увеличено быстродействие

Добро пожаловать в pytest-2.0.2, обновление и исправление ошибок pytest, зрелого инструмента тестирования для Python, поддерживающего CPython 2.4-3.2, Jython и последние интерпретаторы PyPy. Смотрите подробную документацию с проверенными примерами здесь:

Если вы хотите установить или обновить pytest, просто введите одно из:

pip install -U pytest # or
easy_install -U pytest

Большое спасибо всем репортерам выпуска и людям, задающим вопросы или жалующимся, особенно Юрко за его настойчивость, Лауре, Виктору и Брианне за помощь в улучшении и Ронни за его общие советы.

наилучшие пожелания, хольгер крекель

Изменения между 2.0.1 и 2.0.2

  • решить проблему32 - ускорить тестирование очень быстрых тестовых функций за счет снижения относительных накладных расходов

  • исправление issue30 - расширенная обработка xfail/skipif и улучшенные отчеты. Если в выражениях skip/xfail допущена синтаксическая ошибка, теперь вы получаете красивые отчеты об ошибках.

    Также теперь вы можете обращаться к глобальным файлам модуля из выражений xfail/skipif, так что теперь работает, например, следующее:

    import pytest
    import mymodule
    @pytest.mark.skipif("mymodule.__version__[0] == "1")
    def test_function():
        pass
    

    Это не приведет к запуску тестовой функции, если строка версии модуля не начинается с «1». Обратите внимание, что указание строки вместо булевых выражений позволяет py.test сообщать значимую информацию при подведении итогов выполнения теста о том, какие условия приводят к пропуску (или xfail-) тестов.

  • исправление проблемы28 - setup_method и pytest_generate_tests работают вместе Метод фикстуры setup_method теперь вызывается и для вызовов тестовых функций, сгенерированных хуком pytest_generate_tests.

  • исправление issue27 - collectonly и выбор ключевых слов (-k) теперь работают вместе Также, если вы сделаете «py.test –collectonly -q», вы получите плоский список идентификаторов тестов, который вы можете использовать для вставки в командную строку py.test, чтобы выполнить определенный тест.

  • исправление проблемы25 во избежание проблем с выводом –pdb и python3.2/encodings

  • исправление проблемы23 - аргумент tmpdir теперь работает на Python3.2 и WindowsXP Начиная с Python3.2 os.symlink может поддерживаться. Требуя более новую версию py lib, реализация py.path.local() признает это.

  • исправили опечатки в документации (спасибо Виктору Гарсия, Брианне Логер) и отдельное спасибо Лауре Крейтон, которая также просмотрела часть документации.

  • исправить немного неправильный вывод подробного отчета о ходе выполнения для классов (спасибо Amaury)

  • более точные (избегающие) предупреждения об устаревании для доступа к node.Class|Function

  • избегать вспомогательного кода std unittest assertion в трассировках (спасибо Ronny)

Вернуться на верх