Fixture#
Fixtures это функции, которые выполняют что-то до теста и, при необходимости, после.
Два самых распространенных применения fixture:
для передачи каких-то данных для теста
setup and teardown
Fixture scope - контролирует как часто запускается fixture:
function (значение по умолчанию) - fixture запускается до и после каждого теста, который использует это fixture
class
module - fixture запускается один раз до и после тестов в модуле, который использует это fixture
package
session - fixture запускается один раз в начале сессии и в конце
Запуск «после» актуален только для fixture c yield.
Полезные команды для работы с fixture:
pytest --fixtures
- показывает все доступные fixture (встроенные, из плагинов и найденные в тестах и conftest.py). Добавление-v
показывает в каких файлах находятся fixture и на какой строке определена функцияpytest --setup-show
- показывает какие fixture запускаются и когда