HEX
Server: LiteSpeed
System: Linux houston.panomity.com 6.8.0-100-generic #100-Ubuntu SMP PREEMPT_DYNAMIC Tue Jan 13 16:40:06 UTC 2026 x86_64
User: nudepix (1011)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: //usr/share/doc/python3-mailmanclient/src/testing.rst
========================
Developing MailmanClient
========================


Running Tests
=============

The test suite is run with the `tox`_ tool, which allows it to be run against
multiple versions of Python. The tests are discovered and run using `pytest`_.

To run the test suite, run::

  $ tox

To run tests for only one version of Python, you can run::

  $ tox -e py39
  
``pytest`` starts Mailman Core using ``pytest-services`` plugin and
automatically manages it's start and stop cycle for every module.


.. note:: Previously, we used ``vcrpy`` and ``pytest-vcr`` packages to manage
          recorded tapes for interaction with Mailman Core. That was replaced
          with ``pytest-services`` plugin, which instead start Core for every
          test.


.. _`tox`: https://testrun.org/tox/latest/
.. _`pytest`: https://docs.pytest.org/en/latest/