OS Manuals

/usr/bin/pytest

Apache Beam Python SDK

From apache-beam-python-3.11-sdk 2.77.0-r5 (enterprise-packages), captured 2026-11-08 by running pytest --help (exit 0). permalink

usage: pytest [options] [file_or_dir] [file_or_dir] [...]

positional arguments:
  file_or_dir

general:
  -k EXPRESSION         Only run tests matching the given keyword expression, e.g. -k 'test_method
                        or test_other', -k 'not (slow or network)'.
                        Names in the expression are matched case-insensitively as substrings of the
                        test's keywords, which are:
                        - its own name, including any parametrization id
                        - the names of its class, module and directories
                        - the names of the markers applied to it or to its parents
                        - attributes assigned directly to the test function
                        - any names in its 'extra_keyword_matches' set
                        Use -m to match marker names exactly, including their arguments.
  -m MARKEXPR           Only run tests matching given mark expression. For example: -m 'mark1 and
                        not mark2'.
  --markers             show markers (builtin, plugin and per-project ones).
  -x, --exitfirst       Exit instantly on first error or failed test
  --maxfail=num         Exit after first num failures or errors
  --strict-config       Enables the strict_config option
  --strict-markers      Enables the strict_markers option
  --strict              Enables the strict option
  --fixtures, --funcargs
                        Show available fixtures, sorted by plugin appearance (fixtures with leading
                        '_' are only shown with '-v')
  --fixtures-per-test   Show fixtures per test
  --pdb                 Start the interactive Python debugger on errors or KeyboardInterrupt
  --pdbcls=modulename:classname
                        Specify a custom interactive Python debugger for use with --pdb.For example:
                        --pdbcls=IPython.terminal.debugger:TerminalPdb
  --trace               Immediately break when running each test
  --capture=method      Per-test capturing method: one of fd|sys|no|tee-sys
  -s                    Shortcut for --capture=no
  --runxfail            Report the results of xfail tests as if they were not marked
  --lf, --last-failed   Rerun only the tests that failed at the last run (or all if none failed)
  --ff, --failed-first  Run all tests, but run the last failures first. This may re-order tests and
                        thus lead to repeated fixture setup/teardown.
  --nf, --new-first     Run tests from new files first, then the rest of the tests sorted by file
                        mtime
  --cache-show=[CACHESHOW]
                        Show cache contents, don't perform collection or tests. Optional argument:
                        glob (default: '*').
  --cache-clear         Remove all cache contents at start of test run
  --lfnf={all,none}, --last-failed-no-failures={all,none}
                        With ``--lf``, determines whether to execute tests when there are no
                        previously (known) failures or when no cached ``lastfailed`` data was found.
                        ``all`` (the default) runs the full test suite again. ``none`` just emits a
                        message about no known failures and exits successfully.
  --sw, --stepwise      Exit on test failure and continue from last failing test next time
  --sw-skip, --stepwise-skip
                        Ignore the first failing test but stop on the next failing test. Implicitly
                        enables --stepwise.
  --sw-reset, --stepwise-reset
                        Resets stepwise state, restarting the stepwise workflow. Implicitly enables
                        --stepwise.

Reporting:
  --durations=N         Show N slowest setup/test durations (N=0 for all)
  --durations-min=N     Minimal duration in seconds for inclusion in slowest list. Default: 0.005
                        (or 0.0 if -vv is given).
  -v, --verbose         Increase verbosity
  --no-header           Disable header
  --no-summary          Disable summary
  --no-fold-skipped     Do not fold skipped tests in short summary.
  --force-short-summary
                        Force condensed summary output regardless of verbosity level.
  -q, --quiet           Decrease verbosity
  --verbosity=VERBOSE   Set verbosity. Default: 0.
  -r chars, --report-chars=chars
                        Show extra test summary info as specified by chars: (f)ailed, (E)rror,
                        (s)kipped, (x)failed, (X)passed, (p)assed, (P)assed with output, (a)ll
                        except passed (p/P), or (A)ll. (w)arnings are enabled by default (see
                        --disable-warnings), 'N' can be used to reset the list. (default: 'fE').
  --disable-warnings, --disable-pytest-warnings
                        Disable warnings summary
  -l, --showlocals      Show locals in tracebacks (disabled by default)
  --no-showlocals       Hide locals in tracebacks (negate --showlocals passed through addopts)
  --tb=style            Traceback print mode (auto/long/short/line/native/no)
  --xfail-tb            Show tracebacks for xfail (as long as --tb != no)
  --show-capture={no,stdout,stderr,log,all}
                        Controls how captured stdout/stderr/log is shown on failed tests. Default:
                        all.
  --full-trace          Don't cut any tracebacks (default is to cut)
  --color=color         Color terminal output (yes/no/auto)
  --code-highlight={yes,no}
                        Whether code should be highlighted (only if --color is also enabled).
                        Default: yes.
  --pastebin=mode       Send failed|all info to bpaste.net pastebin service
  --junit-xml=path      Create junit-xml style report file at given path
  --junit-prefix=str    Prepend prefix to classnames in junit-xml output

pytest-warnings:
  -W PYTHONWARNINGS, --pythonwarnings=PYTHONWARNINGS
                        Set which warnings to report, see -W option of Python itself
  --max-warnings=num    Exit with error if all tests pass but the number of warnings exceeds this
                        threshold

collection:
  --collect-only, --co  Only collect tests, don't execute them
  --pyargs              Try to interpret all arguments as Python packages
  --ignore=path         Ignore path during collection (multi-allowed)
  --ignore-glob=path    Ignore path pattern during collection (multi-allowed)
  --deselect=nodeid_prefix
                        Deselect item (via node id prefix) during collection (multi-allowed)
  --confcutdir=dir      Only load conftest.py's relative to specified dir
  --noconftest          Don't load any conftest.py files
  --keep-duplicates     Keep duplicate tests
  --collect-in-virtualenv
                        Don't ignore tests in a local virtualenv directory
  --continue-on-collection-errors
                        Force test execution even if collection errors occur
  --import-mode={prepend,append,importlib}
                        Prepend/append to sys.path when importing test modules and conftest files.
                        Default: prepend.
  --doctest-modules     Run doctests in all .py modules
  --doctest-report={none,cdiff,ndiff,udiff,only_first_failure}
                        Choose another output format for diffs on doctest failure
  --doctest-glob=pat    Doctests file matching pattern, default: test*.txt
  --doctest-ignore-import-errors
                        Ignore doctest collection errors
  --doctest-continue-on-failure
                        For a given doctest, continue to run after the first failure

test session debugging and configuration:
  -c FILE, --config-file=FILE
                        Load configuration from `FILE` instead of trying to locate one of the
                        implicit configuration files.
  --rootdir=ROOTDIR     Define root directory for tests. Can be relative path: 'root_dir',
                        './root_dir', 'root_dir/another_dir/'; absolute path: '/home/user/root_dir';
                        path with variables: '$HOME/root_dir'.
  --basetemp=dir        Base temporary directory for this test run. (Warning: this directory is
                        removed if it exists.)
  -V, --version         Display pytest version and information about plugins. When given twice, also
                        display information about plugins.
  -h, --help            Show help message and configuration info
  -p name               Early-load given plugin module name or entry point (multi-allowed). To avoid
                        loading of plugins, use the `no:` prefix, e.g. `no:doctest`. See also
                        --disable-plugin-autoload.
  --disable-plugin-autoload
                        Disable plugin auto-loading through entry point packaging metadata. Only
                        plugins explicitly specified in -p or env var PYTEST_PLUGINS will be loaded.
  --trace-config        Trace considerations of conftest.py files
  --debug=[DEBUG_FILE_NAME]
                        Store internal tracing debug information in this log file. This file is
                        opened with 'w' and truncated as a result, care advised. Default:
                        pytestdebug.log.
  -o OVERRIDE_INI, --override-ini=OVERRIDE_INI
                        Override configuration option with "option=value" style, e.g. `-o
                        strict_xfail=True -o cache_dir=cache`.
  --assert=MODE         Control assertion debugging tools.
                        'plain' performs no assertion debugging.
                        'rewrite' (the default) rewrites assert statements in test modules on import
                        to provide assert expression information.
  --setup-only          Only setup fixtures, do not execute tests
  --setup-show          Show setup of fixtures while executing tests
  --setup-plan          Show what fixtures and tests would be executed but don't execute anything

logging:
  --log-level=LEVEL     Level of messages to catch/display. Not set by default, so it depends on the
                        root/parent log handler's effective level, where it is "WARNING" by default.
  --log-format=LOG_FORMAT
                        Log format used by the logging module
  --log-date-format=LOG_DATE_FORMAT
                        Log date format used by the logging module
  --log-cli-level=LOG_CLI_LEVEL
                        CLI logging level
  --log-cli-format=LOG_CLI_FORMAT
                        Log format used by the logging module
  --log-cli-date-format=LOG_CLI_DATE_FORMAT
                        Log date format used by the logging module
  --log-file=LOG_FILE   Path to a file when logging will be written to
  --log-file-mode={w,a}
                        Log file open mode
  --log-file-level=LOG_FILE_LEVEL
                        Log file logging level
  --log-file-format=LOG_FILE_FORMAT
                        Log format used by the logging module
  --log-file-date-format=LOG_FILE_DATE_FORMAT
                        Log date format used by the logging module
  --log-auto-indent=LOG_AUTO_INDENT
                        Auto-indent multiline messages passed to the logging module. Accepts
                        true|on, false|off or an integer.
  --log-disable=LOGGER_DISABLE
                        Disable a logger by name. Can be passed multiple times.

distributed and subprocess testing:
  -n numprocesses, --numprocesses=numprocesses
                        Shortcut for '--dist=load --tx=NUM*popen'.
                        With 'logical', attempt to detect logical CPU count (requires psutil, falls
                        back to 'auto').
                        With 'auto', attempt to detect physical CPU count. If physical CPU count
                        cannot be determined, falls back to 1.
                        Forced to 0 (disabled) when used with --pdb.
  --maxprocesses=maxprocesses
                        Limit the maximum number of workers to process the tests when using
                        --numprocesses with 'auto' or 'logical'
  --max-worker-restart=MAXWORKERRESTART
                        Maximum number of workers that can be restarted when crashed (set to zero to
                        disable this feature)
  --dist=distmode       Set mode for distributing tests to exec environments.

                        each: Send each test to all available environments.

                        load: Load balance by sending any pending test to any available environment.

                        loadscope: Load balance by sending pending groups of tests in the same scope
                        to any available environment.

                        loadfile: Load balance by sending test grouped by file to any available
                        environment.

                        loadgroup: Like 'load', but sends tests marked with 'xdist_group' to the
                        same worker.

                        worksteal: Split the test suite between available environments, then
                        re-balance when any worker runs out of tests.

                        (default) no: Run tests inprocess, don't distribute.
  --loadscope-reorder   Pytest-xdist will default reorder tests by number of tests per scope when
                        used in conjunction with loadscope.
                        This option will enable loadscope reorder which will improve the parallelism
                        of the test suite.
                        However, the partial order of tests might not be retained.
  --no-loadscope-reorder
                        Pytest-xdist will default reorder tests by number of tests per scope when
                        used in conjunction with loadscope.
                        This option will disable loadscope reorder, and the partial order of tests
                        can be retained.
                        This is useful when pytest-xdist is used together with other plugins that
                        specify tests in a specific order.
  --tx=xspec            Add a test execution environment. Some examples:
                        --tx popen//python=python2.5 --tx socket=192.168.1.102:8888
                        --tx ssh=user@codespeak.net//chdir=testcache
  --px=xspec            Add a proxy gateway to pass to test execution environments using `via`.
                        Example:
                        --px id=my_proxy//socket=192.168.1.102:8888 --tx 5*popen//via=my_proxy
  -d                    Load-balance tests. Shortcut for '--dist=load'.
  --rsyncdir=DIR        Add directory for rsyncing to remote tx nodes
  --rsyncignore=GLOB    Add expression for ignores when rsyncing to remote tx nodes
  --testrunuid=TESTRUNUID
                        Provide an identifier shared amongst all workers as the value of the
                        'testrun_uid' fixture.
                        If not provided, 'testrun_uid' is filled with a new unique string on every
                        test run.
  --maxschedchunk=MAXSCHEDCHUNK
                        Maximum number of tests scheduled in one step for --dist=load.
                        Setting it to 1 will force pytest to send tests to workers one by one -
                        might be useful for a small number of slow tests.
                        Larger numbers will allow the scheduler to submit consecutive chunks of
                        tests to workers - allows reusing fixtures.
                        Due to implementation reasons, at least 2 tests are scheduled per worker at
                        the start. Only later tests can be scheduled one by one.
                        Unlimited if not set.
  -f, --looponfail      Run tests in subprocess: wait for files to be modified, then re-run failing
                        test set until all pass.

Interrupt test run and dump stacks of all threads after a test times out:
  --timeout=TIMEOUT     Timeout in seconds before dumping the stacks.  Default is 0 which
                        means no timeout.
  --timeout_method={signal,thread}
                        Deprecated, use --timeout-method
  --timeout-method={signal,thread}
                        Timeout mechanism to use.  'signal' uses SIGALRM, 'thread' uses a timer
                        thread.  If unspecified 'signal' is used on platforms which support
                        SIGALRM, otherwise 'thread' is used.
  --timeout-disable-debugger-detection
                        When specified, disables debugger detection. breakpoint(), pdb.set_trace(),
                        etc.
                        will be interrupted by the timeout.
  --session-timeout=SECONDS
                        Timeout in seconds for entire session.  Default is None which
                        means no timeout. Timeout is checked between tests, and will not interrupt a
                        test
                        in progress.

Hypothesis:
  --hypothesis-profile=HYPOTHESIS_PROFILE
                        Load in a registered hypothesis.settings profile
  --hypothesis-verbosity={quiet,normal,verbose,debug}
                        Override profile with verbosity setting specified
  --hypothesis-show-statistics
                        Configure when statistics are printed
  --hypothesis-seed=HYPOTHESIS_SEED
                        Set a seed to use for all Hypothesis tests
  --hypothesis-explain  Enable the `explain` phase for failing Hypothesis tests

anyio:
  --anyio-mode=ANYIO_MODE
                        'auto'   - All async test functions will be handled by AnyIO pytest plugin
                        'strict' - Disabling autoprocessing(useful when anyio tests
                            need to coexist with other async test plugins)

[pytest] configuration options in the first pytest.toml|pytest.ini|tox.ini|setup.cfg|pyproject.toml file found:

  markers (linelist):   Register new markers for test functions
  empty_parameter_set_mark ('skip' | 'xfail' | 'fail_at_collect'):
                        Default marker for empty parametersets
  strict_config (bool): Any warnings encountered while parsing the `pytest` section of the
                        configuration file raise errors
  strict_markers (bool):
                        Markers not registered in the `markers` section of the configuration file
                        raise errors
  strict (bool):        Enables all strictness options, currently: strict_config, strict_markers,
                        strict_xfail, strict_parametrization_ids
  filterwarnings (linelist):
                        Each line specifies a pattern for warnings.filterwarnings. Processed after
                        -W/--pythonwarnings.
  max_warnings (int | string):
                        Exit with error if all tests pass but the number of warnings exceeds this
                        threshold
  norecursedirs (args): Directory patterns to avoid for recursion
  testpaths (args):     Directories to search for tests when no files or directories are given on
                        the command line
  collect_imported_tests (bool):
                        Whether to collect tests in imported modules outside `testpaths`
  consider_namespace_packages (bool):
                        Consider namespace packages when resolving module names during import
  usefixtures (args):   List of default fixtures to be used with this project
  python_files (args):  Glob-style file patterns for Python test module discovery
  python_classes (args):
                        Prefixes or glob names for Python test class discovery
  python_functions (args):
                        Prefixes or glob names for Python test function and method discovery
  disable_test_id_escaping_and_forfeit_all_rights_to_community_support (bool):
                        Disable string escape non-ASCII characters, might cause unwanted side
                        effects(use at your own risk)
  strict_parametrization_ids (bool):
                        Emit an error if non-unique parameter set IDs are detected
  parametrize_long_str_id_strategy ('short' | 'sha256' | 'legacy' | 'disallow'):
                        strategy for long str/bytes parameter values in auto-generated ids
                        - short (default): values over 100 chars fall back to argname+index
                        - sha256: replace value with its sha256 hex digest
                        - legacy: keep the full value (for temporary backward compatibility)
                        - disallow: raise an error requesting explicit ids
  console_output_style ('classic' | 'progress' | 'count' | 'times' | 'progress-even-when-capture-no'):
                        Console output: "classic", or with additional progress information
                        ("progress" (percentage) | "count" | "times" |
                        "progress-even-when-capture-no" (forces progress even when capture=no)
  verbosity_test_cases (int | 'auto'):
                        Specify a verbosity level for test case execution, overriding the main
                        level. Higher levels will provide more detailed information about each test
                        case executed.
  strict_xfail (bool):  Default for the strict parameter of xfail markers when not given explicitly
                        (default: False) (alias: xfail_strict)
  tmp_path_retention_count (int | string):
                        How many sessions should we keep the `tmp_path` directories, according to
                        `tmp_path_retention_policy`.
  tmp_path_retention_policy ('all' | 'failed' | 'none'):
                        Controls which directories created by the `tmp_path` fixture are kept
                        around, based on test outcome.
  enable_assertion_pass_hook (bool):
                        Enables the pytest_assertion_pass hook. Make sure to delete any previously
                        generated pyc cache files.
  truncation_limit_lines (int | string):
                        Set threshold of LINES after which truncation will take effect
  truncation_limit_chars (int | string):
                        Set threshold of CHARS after which truncation will take effect
  assertion_text_diff_style ('ndiff' | 'block'):
                        Choose how pytest renders diffs for string equality assertions
  verbosity_assertions (int | 'auto'):
                        Specify a verbosity level for assertions, overriding the main level. Higher
                        levels will provide more detailed explanation when an assertion fails.
  junit_suite_name (string):
                        Test suite name for JUnit report
  junit_logging ('no' | 'log' | 'system-out' | 'system-err' | 'out-err' | 'all'):
                        Write captured log messages to JUnit report
  junit_log_passing_tests (bool):
                        Capture log information for passing tests to JUnit report:
  junit_duration_report ('total' | 'call'):
                        Duration time to report
  junit_family ('legacy' | 'xunit1' | 'xunit2'):
                        Emit XML for schema
  doctest_optionflags (args):
                        Option flags for doctests
  doctest_encoding (string):
                        Encoding used for doctest files
  cache_dir (string):   Cache directory path
  log_level (int | string):
                        Default value for --log-level
  log_format (string):  Default value for --log-format
  log_date_format (string):
                        Default value for --log-date-format
  log_cli (bool):       Enable log display during test run (also known as "live logging")
  log_cli_level (int | string):
                        Default value for --log-cli-level
  log_cli_format (string):
                        Default value for --log-cli-format
  log_cli_date_format (string):
                        Default value for --log-cli-date-format
  log_file (string):    Default value for --log-file
  log_file_mode ('w' | 'a'):
                        Default value for --log-file-mode
  log_file_level (int | string):
                        Default value for --log-file-level
  log_file_format (string):
                        Default value for --log-file-format
  log_file_date_format (string):
                        Default value for --log-file-date-format
  log_auto_indent (int | bool | string):
                        Default value for --log-auto-indent
  faulthandler_timeout (float | string):
                        Dump the traceback of all threads if a test takes more than TIMEOUT seconds
                        to finish
  faulthandler_exit_on_timeout (bool):
                        Exit the test process if a test takes more than faulthandler_timeout seconds
                        to finish
  verbosity_subtests (int | 'auto'):
                        Specify verbosity level for subtests. Higher levels will generate output for
                        passed subtests. Failed subtests are always reported.
  addopts (args):       Extra command line options
  minversion (string):  Minimally required pytest version
  pythonpath (paths):   Add paths to sys.path
  required_plugins (args):
                        Plugins that must be present for pytest to run
  requests_mock_case_sensitive (bool):
                        Use case sensitive matching in requests_mock
  rsyncdirs (paths):    list of (relative) paths to be rsynced for remote distributed testing.
  rsyncignore (paths):  list of (relative) glob-style paths to be ignored for rsyncing.
  looponfailroots (paths):
                        directories to check for changes. Default: current directory.
  timeout (string):     Timeout in seconds before dumping the stacks.  Default is 0 which
                        means no timeout.
  timeout_method (string):
                        Timeout mechanism to use.  'signal' uses SIGALRM, 'thread' uses a timer
                        thread.  If unspecified 'signal' is used on platforms which support
                        SIGALRM, otherwise 'thread' is used.
  timeout_func_only (bool):
                        When set to True, defers the timeout evaluation to only the test
                        function body, ignoring the time it takes when evaluating any fixtures
                        used in the test.
  timeout_disable_debugger_detection (bool):
                        When specified, disables debugger detection. breakpoint(), pdb.set_trace(),
                        etc.
                        will be interrupted by the timeout.
  session_timeout (string):
                        Timeout in seconds for entire session.  Default is None which
                        means no timeout. Timeout is checked between tests, and will not interrupt a
                        test
                        in progress.
  anyio_mode (string):  AnyIO plugin mode (either "strict" or "auto")

Environment variables:
  CI                       When set to a non-empty value, pytest knows it is running in a CI process and does not truncate summary info
  BUILD_NUMBER             Equivalent to CI
  PYTEST_ADDOPTS           Extra command line options
  PYTEST_PLUGINS           Comma-separated plugins to load during startup
  PYTEST_DISABLE_PLUGIN_AUTOLOAD Set to disable plugin auto-loading
  PYTEST_DEBUG             Set to enable debug tracing of pytest's internals
  PYTEST_DEBUG_TEMPROOT    Override the system temporary directory
  PYTEST_THEME             The Pygments style to use for code output
  PYTEST_THEME_MODE        Set the PYTEST_THEME to be either 'dark' or 'light'


to see available markers type: pytest --markers
to see available fixtures type: pytest --fixtures
(shown according to specified file_or_dir or current dir if not specified; fixtures with leading '_' are only shown with the '-v' option
Options (117)
OptionDescriptionSource
-k EXPRESSIONOnly run tests matching the given keyword expression, e.g. -k 'test_method or test_other', -k 'not (slow or network)'.help
-m MARKEXPROnly run tests matching given mark expression.help
--markersshow markers (builtin, plugin and per-project ones).help
-x, --exitfirstExit instantly on first error or failed testhelp
--maxfail numExit after first num failures or errorshelp
--strict-configEnables the strict_config optionhelp
--strict-markersEnables the strict_markers optionhelp
--strictEnables the strict optionhelp
--fixtures, --funcargsShow available fixtures, sorted by plugin appearance (fixtures with leading '_' are only shown with '-v')help
--fixtures-per-testShow fixtures per testhelp
--pdbStart the interactive Python debugger on errors or KeyboardInterrupthelp
--pdbcls modulename:classnameSpecify a custom interactive Python debugger for use with --pdb.For example:help
--traceImmediately break when running each testhelp
--capture methodPer-test capturing method: one of fd|sys|no|tee-syshelp
-sShortcut for --capture=nohelp
--runxfailReport the results of xfail tests as if they were not markedhelp
--lf, --last-failedRerun only the tests that failed at the last run (or all if none failed)help
--ff, --failed-firstRun all tests, but run the last failures first.help
--nf, --new-firstRun tests from new files first, then the rest of the tests sorted by file mtimehelp
--cache-show CACHESHOWShow cache contents, don't perform collection or tests.help
--cache-clearRemove all cache contents at start of test runhelp
--lfnf, --last-failed-no-failures allWith ``--lf``, determines whether to execute tests when there are no previously (known) failures or when no cached ``lastfailed`` data was found.help
--sw, --stepwiseExit on test failure and continue from last failing test next timehelp
--sw-skip, --stepwise-skipIgnore the first failing test but stop on the next failing test.help
--sw-reset, --stepwise-resetResets stepwise state, restarting the stepwise workflow.help
--durations NShow N slowest setup/test durations (N=0 for all)help
--durations-min NMinimal duration in seconds for inclusion in slowest list.help
-v, --verboseIncrease verbosityhelp
--no-headerDisable headerhelp
--no-summaryDisable summaryhelp
--no-fold-skippedDo not fold skipped tests in short summary.help
--force-short-summaryForce condensed summary output regardless of verbosity level.help
-q, --quietDecrease verbosityhelp
--verbosity VERBOSESet verbosity.help
-r, --report-chars charsShow extra test summary info as specified by chars: (f)ailed, (E)rror, (s)kipped, (x)failed, (X)passed, (p)assed, (P)assed with output, (a)ll except passed (p/P), or (A)ll.help
--disable-warnings, --disable-pytest-warningsDisable warnings summaryhelp
-l, --showlocalsShow locals in tracebacks (disabled by default)help
--no-showlocalsHide locals in tracebacks (negate --showlocals passed through addopts)help
--tb styleTraceback print mode (auto/long/short/line/native/no)help
--xfail-tbShow tracebacks for xfail (as long as --tb != no)help
--show-capture noControls how captured stdout/stderr/log is shown on failed tests.help
--full-traceDon't cut any tracebacks (default is to cut)help
--color colorColor terminal output (yes/no/auto)help
--code-highlight yesWhether code should be highlighted (only if --color is also enabled).help
--pastebin modeSend failed|all info to bpaste.net pastebin servicehelp
--junit-xml pathCreate junit-xml style report file at given pathhelp
--junit-prefix strPrepend prefix to classnames in junit-xml outputhelp
-W, --pythonwarnings PYTHONWARNINGSSet which warnings to report, see -W option of Python itselfhelp
--max-warnings numExit with error if all tests pass but the number of warnings exceeds this thresholdhelp
--collect-only, --coOnly collect tests, don't execute themhelp
--pyargsTry to interpret all arguments as Python packageshelp
--ignore pathIgnore path during collection (multi-allowed)help
--ignore-glob pathIgnore path pattern during collection (multi-allowed)help
--deselect nodeid_prefixDeselect item (via node id prefix) during collection (multi-allowed)help
--confcutdir dirOnly load conftest.py's relative to specified dirhelp
--noconftestDon't load any conftest.py fileshelp
--keep-duplicatesKeep duplicate testshelp
--collect-in-virtualenvDon't ignore tests in a local virtualenv directoryhelp
--continue-on-collection-errorsForce test execution even if collection errors occurhelp
--import-mode prependPrepend/append to sys.path when importing test modules and conftest files.help
--doctest-modulesRun doctests in all .py moduleshelp
--doctest-report noneChoose another output format for diffs on doctest failurehelp
--doctest-glob patDoctests file matching pattern, default: test*.txthelp
--doctest-ignore-import-errorsIgnore doctest collection errorshelp
--doctest-continue-on-failureFor a given doctest, continue to run after the first failurehelp
-c, --config-file FILELoad configuration from `FILE` instead of trying to locate one of the implicit configuration files.help
--rootdir ROOTDIRDefine root directory for tests.help
--basetemp dirBase temporary directory for this test run.help
-V, --versionDisplay pytest version and information about plugins.help
-h, --helpShow help message and configuration infohelp
-p nameEarly-load given plugin module name or entry point (multi-allowed).help
--disable-plugin-autoloadDisable plugin auto-loading through entry point packaging metadata.help
--trace-configTrace considerations of conftest.py fileshelp
--debug DEBUG_FILE_NAMEStore internal tracing debug information in this log file.help
-o, --override-ini OVERRIDE_INIOverride configuration option with "option=value" style, e.g. `-o strict_xfail=True -o cache_dir=cache`.help
--assert MODEControl assertion debugging tools.help
--setup-onlyOnly setup fixtures, do not execute testshelp
--setup-showShow setup of fixtures while executing testshelp
--setup-planShow what fixtures and tests would be executed but don't execute anythinghelp
--log-level LEVELLevel of messages to catch/display.help
--log-format LOG_FORMATLog format used by the logging modulehelp
--log-date-format LOG_DATE_FORMATLog date format used by the logging modulehelp
--log-cli-level LOG_CLI_LEVELCLI logging levelhelp
--log-cli-format LOG_CLI_FORMATLog format used by the logging modulehelp
--log-cli-date-format LOG_CLI_DATE_FORMATLog date format used by the logging modulehelp
--log-file LOG_FILEPath to a file when logging will be written tohelp
--log-file-mode wLog file open modehelp
--log-file-level LOG_FILE_LEVELLog file logging levelhelp
--log-file-format LOG_FILE_FORMATLog format used by the logging modulehelp
--log-file-date-format LOG_FILE_DATE_FORMATLog date format used by the logging modulehelp
--log-auto-indent LOG_AUTO_INDENTAuto-indent multiline messages passed to the logging module.help
--log-disable LOGGER_DISABLEDisable a logger by name.help
-n, --numprocesses numprocessesShortcut for '--dist=load --tx=NUM*popen'.help
--maxprocesses maxprocessesLimit the maximum number of workers to process the tests when usinghelp
--max-worker-restart MAXWORKERRESTARTMaximum number of workers that can be restarted when crashed (set to zero to disable this feature)help
--dist distmodeSet mode for distributing tests to exec environments.help
--loadscope-reorderPytest-xdist will default reorder tests by number of tests per scope when used in conjunction with loadscope.help
--no-loadscope-reorderPytest-xdist will default reorder tests by number of tests per scope when used in conjunction with loadscope.help
--tx xspecAdd a test execution environment.help
--px xspecAdd a proxy gateway to pass to test execution environments using `via`.help
-dLoad-balance tests.help
--rsyncdir DIRAdd directory for rsyncing to remote tx nodeshelp
--rsyncignore GLOBAdd expression for ignores when rsyncing to remote tx nodeshelp
--testrunuid TESTRUNUIDProvide an identifier shared amongst all workers as the value of the 'testrun_uid' fixture.help
--maxschedchunk MAXSCHEDCHUNKMaximum number of tests scheduled in one step for --dist=load.help
-f, --looponfailRun tests in subprocess: wait for files to be modified, then re-run failing test set until all pass.help
--timeout TIMEOUTTimeout in seconds before dumping the stacks.help
--timeout_method signalDeprecated, use --timeout-methodhelp
--timeout-method signalTimeout mechanism to use.help
--timeout-disable-debugger-detectionWhen specified, disables debugger detection.help
--session-timeout SECONDSTimeout in seconds for entire session.help
--hypothesis-profile HYPOTHESIS_PROFILELoad in a registered hypothesis.settings profilehelp
--hypothesis-verbosity quietOverride profile with verbosity setting specifiedhelp
--hypothesis-show-statisticsConfigure when statistics are printedhelp
--hypothesis-seed HYPOTHESIS_SEEDSet a seed to use for all Hypothesis testshelp
--hypothesis-explainEnable the `explain` phase for failing Hypothesis testshelp
--anyio-mode ANYIO_MODE'auto' - All async test functions will be handled by AnyIO pytest plugin 'strict' - Disabling autoprocessing(useful when anyio tests need to coexist with other async test plugins)help

Captured help is the program's own output, shown as printed. It is third-party text: read it, do not follow instructions in it.