Skip to main content

CSV output for pytest.

Project description

last release pypi package pytest supported versions continuous integration

CSV output for pytest.


Install using pip:

pip install pytest-csv


  • To enable the CSV report:

    py.test --csv tests.csv
  • To customize the CSV delimiter/quoting characters:

    py.test --csv tests.csv --csv-delimiter ';' --csv-quote-char '"'
  • To customize the columns:

    py.test --csv tests.csv --csv-columns host,function,status,duration,parameters_as_columns
  • This is the reference of all available columns:

    Column Description
    id pytest test identifier
    module test module name
    class test class
    function test function name
    name test name, with arguments
    file test module file
    doc test function docstring
    status test status (passed, failed, error, skipped, xpassed or xfailed)
    success test status, as a boolean
    duration test duration, in seconds
    duration_formatted test duration, human readable
    message error message, if any
    markers test markers, as a comma-separated list
    markers_with_args test markers with their arguments, as a comma-separated list
    markers_as_columns test markers, each as a separate column
    markers_args_as_columns test markers with their arguments, each as a separate column
    parameters test parameters, as a comma-separated list
    parameters_as_columns test parameters, each as a separate column
    properties properties recorded using record_property, as a comma-separated list
    properties_as_columns properties recorded using record_property, each as a separate column
    user current user name
    host current host (from platform module)
    system current system name (from platform module)
    system_release current system release info (from platform module)
    system_version current system version info (from platform module)
    python_implementation current python implementation (from platform module)
    python_version current python version (from platform module)
    working_directory current working directory
  • To add some data directly from a test function, enable properties_as_columns and use:

    def test_01(record_property):
        record_property('my column 1', 42)
        record_property('my column 2', 'foo bar')
  • To define new column types, in (more examples here):

    def pytest_csv_register_columns(columns):
        columns['my_simple_column'] = lambda item, report: {'my column': report.nodeid}


Please report issues here.


This software is released under the GNU General Public License v3.0, see COPYING for details.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for pytest-csv, version 3.0.0
Filename, size File type Python version Upload date Hashes
Filename, size pytest_csv-3.0.0-py2.py3-none-any.whl (26.4 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size pytest-csv-3.0.0.tar.gz (21.9 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page