Как заставить pytest показать результаты в цвете, даже при записи в трубу? Похоже, для этого не существует какой-либо опции командной строки.
Как заставить pytest писать цветной вывод?
Ответ 1
Библиотека "py", которую использует pytest, не будет использовать цвет, если он не обнаружит терминал. Я закончил тем, что внес изменения в него, чтобы установить переменную окружения (PY_FORCE_COLOR=1
), чтобы заставить цвет.
Я представил PR для этого: https://bitbucket.org/hpk42/py/pull-request/10/add-an-environment-variable-py_force_color
В настоящее время я устанавливаю свою вилку для этого:
pip install hg+https://[email protected]/msabramo/[email protected]_force_color
Ответ 2
Начиная с версии 2.5.0, py.test имеет опцию --color=yes
Начиная с версии 2.7.0, это также можно сделать:
export PYTEST_ADDOPTS="--color=yes"