Pytest的CSV输出。
pytest-csv的Python项目详细描述
csv输出用于pytest。
安装
使用pip安装:
pip install pytest-csv
用法
要启用CSV报告:
py.test --csv tests.csv
自定义CSV分隔符/引号:
py.test --csv tests.csv --csv-delimiter ';' --csv-quote-char '"'
自定义列:
py.test --csv tests.csv --csv-columns host,function,status,duration,parameters_as_columns
这是所有可用列的参考:
Column Description ^{tt1}$ pytest test identifier ^{tt2}$ test module name ^{tt3}$ test class ^{tt4}$ test function name ^{tt5}$ test name, with arguments ^{tt6}$ test module file ^{tt7}$ test function docstring ^{tt8}$ test status (passed, failed, error, skipped, xpassed or xfailed) ^{tt9}$ test status, as a boolean ^{tt10}$ test duration, in seconds ^{tt11}$ test duration, human readable ^{tt12}$ error message, if any ^{tt13}$ test markers, as a comma-separated list ^{tt14}$ test markers with their arguments, as a comma-separated list ^{tt15}$ test markers, each as a separate column ^{tt16}$ test markers with their arguments, each as a separate column ^{tt17}$ test parameters, as a comma-separated list ^{tt18}$ test parameters, each as a separate column ^{tt19}$ properties recorded using ^{tt20}$, as a comma-separated list ^{tt21}$ properties recorded using ^{tt20}$, each as a separate column ^{tt23}$ current user name ^{tt24}$ current host (from ^{tt25}$ module) ^{tt26}$ current system name (from ^{tt25}$ module) ^{tt28}$ current system release info (from ^{tt25}$ module) ^{tt30}$ current system version info (from ^{tt25}$ module) ^{tt32}$ current python implementation (from ^{tt25}$ module) ^{tt34}$ current python version (from ^{tt25}$ module) ^{tt36}$ current working directory 若要直接从测试函数添加某些数据,请启用“属性”列并使用:
def test_01(record_property): record_property('my column 1', 42) record_property('my column 2', 'foo bar')
要定义新的列类型,请在conftest.py(more examples here)中:
def pytest_csv_register_columns(columns): columns['my_simple_column'] = lambda item, report: {'my column': report.nodeid}
问题
请报告问题here。
许可证
此软件是在gnu通用公共许可v3.0下发布的,有关详细信息,请参见COPYING。