АнглийскийФранцузскийИспанский

Значок OnWorks

py.test-2.7 - Онлайн в облаке

Запустите py.test-2.7 в бесплатном хостинг-провайдере OnWorks через Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.

Это команда py.test-2.7, которую можно запустить в бесплатном хостинг-провайдере OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.

ПРОГРАММА:

ИМЯ


pytest - использование pytest

ВЫЗОВ ПИ.ТЕСТ ЧЕРЕЗ ПИТОН -M ПИ.ТЕСТ


Новое в версии 2.0.

Если вы используете Python-2.5 или новее, вы можете запустить тестирование через интерпретатор Python из
командная строка:

питон -m pytest [...]

Это эквивалентно вызову сценария командной строки. ру.тест [...] непосредственно.

ПОЛУЧЕНИЕ ПОМОГИТЕ ON ВЕРСИЯ, ВАРИАНТ ИМЕНА, ОКРУЖАЮЩАЯ СРЕДА ПЕРЕМЕННЫЕ


py.test --version # показывает, откуда был импортирован pytest
py.test --fixtures # показать доступные аргументы встроенной функции
py.test -h | --help # показать справку по параметрам командной строки и файла конфигурации

ОСТАНОВКА ПОСЛЕ ПЕРВЫЙ (ИЛИ N) ОТКАЗЫ


Чтобы остановить процесс тестирования после первых (N) сбоев:

py.test -x # остановить после первого сбоя
py.test --maxfail = 2 # остановить после двух сбоев

УКАЗАНИЕ ИСПЫТАНИЯ / ВЫБОР ИСПЫТАНИЯ


Несколько вариантов тестового запуска:

py.test test_mod.py # запускать тесты в модуле
py.test somepath # запускать все тесты ниже somepath
py.test -k stringexpr # запускать только тесты с именами, соответствующими
# "строковое выражение", например, "MyClass, а не метод"
# выберет TestMyClass.test_something
# но не TestMyClass.test_method_simple
py.test test_mod.py::test_func # запускать только те тесты, которые соответствуют "идентификатору узла",
# например, "test_mod.py::test_func" выберет
# только test_func в test_mod.py
py.test test_mod.py::TestClass::test_method # запускаем единственный метод в
# один класс

Импортируйте pkg и используйте его расположение в файловой системе для поиска и запуска тестов:

py.test --pyargs pkg # запустить все тесты из каталога pypkg

МОДИФИКАЦИЯ ПИТОН ПРОСЛЕДИТЬ ПЕЧАТЬ


Примеры изменения печати трассировки:

py.test --showlocals # показывать локальные переменные в трассировке
py.test -l # показать локальные переменные (ярлык)

py.test --tb = long # информативное форматирование трассировки по умолчанию
py.test --tb = native # форматирование стандартной библиотеки Python
py.test --tb = short # более короткий формат трассировки
py.test --tb = line # только одна строка на сбой

ПАДЕНИЕ К PDB (ПИТОН ОТЛАДЧИК) ON ОТКАЗЫ


Python поставляется со встроенным отладчиком Python под названием PDB. питест позволяет погрузиться в
PDB запрос через параметр командной строки:

py.test --pdb

Это будет вызывать отладчик Python при каждой ошибке. Часто вы можете захотеть сделать
это для первого неудачного теста, чтобы понять определенную неудачную ситуацию:

py.test -x --pdb # перейти в PDB при первой ошибке, затем завершить сеанс тестирования
py.test --pdb --maxfail = 3 # переход к PDB для первых трех сбоев

Обратите внимание, что при любом сбое информация об исключении сохраняется на sys.last_value,
sys.last_type и sys.last_traceback. При интерактивном использовании это позволяет перейти в
посмертная отладка с помощью любого средства отладки. Также можно вручную получить доступ к исключению
информация, например:

>>> import sys
>>> sys.last_traceback.tb_lineno
42
>>> sys.last_value
AssertionError ('результат утверждения == "хорошо"',)

НАСТРОЙКИ A ТОЧКА РАЗРЫВА / AKA SET_TRACE ()


Если вы хотите установить точку останова и введите pdb.set_trace () вы можете использовать помощник:

импортировать pytest
def test_function ():
...
pytest.set_trace () # вызвать отладчик PDB и трассировку

До версии pytest 2.0.0 вы могли только ввести PDB трассировка, если вы отключили захват
в командной строке через ру.тест -s. В более поздних версиях pytest автоматически отключает
захват вывода при вводе PDB отслеживание:

· На захват вывода в других тестах это не влияет.

· Любой предыдущий тестовый результат, который уже был записан и будет обработан как таковой.

· Любой более поздний результат, полученный в рамках того же теста, не будет записан и вместо этого будет
отправлено прямо в sys.stdout. Обратите внимание, что это справедливо даже для тестовых выходных данных.
после выхода из интерактивного PDB сеанс трассировки и продолжить обычный тест
бежать.

Начиная с версии pytest 2.4.0 вы также можете использовать собственный Python Импортировать pdb; pdb.set_trace ()
позвонить, чтобы войти PDB трассировка без использования pytest.set_trace () обертка или
явно отключить захват вывода pytest через ру.тест -s.

ПРОФИЛИРОВАНИЕ ИСПЫТАНИЕ ИСПОЛНЕНИЕ Длительность сезона


Чтобы получить список из 10 самых медленных тестов:

py.test --durations = 10

ФОРМИРОВАНИЕ ЮНИТКСМЛ ФОРМАТ FILES


Для создания файлов результатов, которые могут быть прочитаны Гудзон или другая непрерывная интеграция
серверов, используйте этот вызов:

py.test --junitxml = путь

для создания файла XML на путь.

запись_xml_property
Новое в версии 2.8.

Если вы хотите записать дополнительную информацию для теста, вы можете использовать запись_xml_property
приспособление:

def test_function (record_xml_property):
record_xml_property ("example_key", 1)
утверждать 0

Это добавит дополнительное свойство example_key = "1" к созданным контрольный пример тег:







ПРЕДУПРЕЖДЕНИЕ:
Это экспериментальная функция, и ее интерфейс может быть заменен чем-то другим.
мощный и общий в будущих версиях. Сама функциональность будет сохранена,
Однако.

В настоящее время он не работает при использовании с pytest-xdist .

Также обратите внимание, что использование этой функции нарушит любую проверку схемы. Этот
может быть проблемой при использовании с некоторыми серверами CI.

ФОРМИРОВАНИЕ РЕЗУЛЬТАТЫ ФОРМАТ FILES


Чтобы создать машиночитаемые файлы результатов в виде простого текста, вы можете выполнить:

py.test --resultlog = путь

и посмотрите на содержание путь место нахождения. Такие файлы используются, например, PyPy-тест
веб-страницу, чтобы показать результаты тестирования по нескольким версиям.

ОТПРАВКИ ИСПЫТАНИЕ ДОКЛАД К ОНЛАЙН ПАСТЕБИН СЕРВИС


Создающий a URL для каждый тестXNUMX недостаточность:

py.test --pastebin = не удалось

Это отправит информацию о тестовом запуске в удаленную службу вставки и предоставит URL-адрес для каждого
отказ. Вы можете выбрать тесты как обычно или добавить, например, -x если вы хотите отправить только один
конкретная неудача.

Создающий a URL для a все тестXNUMX Сессия журнал:

py.test --pastebin = все

В настоящее время только вставка в http://bpaste.net услуга реализована.

ОТКЛЮЧЕНИЕ PLUGINS


Чтобы отключить загрузку определенных плагинов во время вызова, используйте -p вариант вместе с
префикс нет:.

Пример: отключить загрузку плагина доктест, который отвечает за выполнение doctest
тесты из текстовых файлов, вызовите py.test следующим образом:

py.test -p нет: doctest

ВЫЗОВ ПИ.ТЕСТ от ПИТОН КОД


Новое в версии 2.0.

Вы можете вызвать питест напрямую из кода Python:

pytest.main ()

это действует так, как если бы вы вызывали "py.test" из командной строки. Это не поднимет
SystemExit но вместо этого верните код выхода. Вы можете передать параметры и аргументы:

pytest.main (['- x', 'mytestdir'])

или передайте строку:

pytest.main ("- x mytestdir")

Вы можете указать дополнительные плагины для pytest.main:

# содержание myinvoke.py
импортировать pytest
класс MyPlugin:
def pytest_sessionfinish (сам):
print ("*** завершение отчета о тестовом прогоне")

pytest.main ("- qq", plugins = [MyPlugin ()])

Запуск покажет, что Мой плагин был добавлен и был вызван его хук:

$ питон myinvoke.py
*** Завершение отчета о тестовом прогоне

Используйте py.test-2.7 онлайн с помощью сервисов onworks.net


Бесплатные серверы и рабочие станции

Скачать приложения для Windows и Linux

Команды Linux

Ad