Skip to content

Commit 271e182

Browse files
committed
📝 Update pytest plugins
* Add pytest-freethreaded to plugins for modified test sequences * Add pytest-edit to modified output plugins * Add playwright and pyleniumio to web dev plugins * Add pytest-patterns to various plugins * Remove pytest-splinter, pytest-mimesis and pytest-freezegun
1 parent 5fcec4f commit 271e182

File tree

1 file changed

+15
-12
lines changed

1 file changed

+15
-12
lines changed

docs/test/pytest/plugins.rst

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,9 @@ usual sequence of a test:
4848
`pytest-xdist <https://pypi.org/project/pytest-xdist/>`_
4949
executes tests in parallel, either with several CPUs on one machine or
5050
several remote machines.
51+
`pytest-freethreaded <https://pypi.org/project/pytest-freethreaded/>`_
52+
for checking whether tests and libraries are thread-safe with Python 3.13’s
53+
experimental freethreaded mode.
5154
`pytest-rerunfailures <https://pypi.org/project/pytest-rerunfailures/>`_
5255
re-executes failed tests and is particularly helpful in the case of faulty
5356
tests.
@@ -70,6 +73,8 @@ result. However, there are plugins that change the output even further:
7073
adds a ``--instafail`` option that reports tracebacks and output from failed
7174
tests immediately after the failure. Normally, pytest reports tracebacks and
7275
output from failed tests only after all tests have completed.
76+
`pytest-edit <https://pypi.org/project/pytest-edit/>`_
77+
opens an editor after a failed test.
7378
`pytest-sugar <https://pypi.org/project/pytest-sugar/>`_
7479
shows green checkmarks instead of dots for passed tests and has a nice
7580
progress bar. Like pytest-instafail, it also shows failures immediately.
@@ -86,15 +91,19 @@ result. However, there are plugins that change the output even further:
8691
pytest is used extensively for testing web projects and there is a long list of
8792
plugins that further simplify testing:
8893

89-
`pytest-selenium <https://pypi.org/project/pytest-selenium/>`_
90-
provides fixtures that enable simple configuration of browser-based tests
91-
with `Selenium <https://www.selenium.dev>`_.
92-
`pytest-splinter <https://pypi.org/project/pytest-splinter/>`_
93-
provide the high-level API of the Selenium-based `Splinter
94-
<https://pypi.org/project/splinter/>`_ to be used more easily from pytest.
94+
9595
`pytest-httpx <https://pypi.org/project/pytest-httpx/>`_
9696
facilitates the testing of `HTTPX <https://www.python-httpx.org>`_ and
9797
`FastAPI <https://fastapi.tiangolo.com>`_ applications.
98+
`Playwright for Python <https://pypi.org/project/playwright/>`_
99+
was specially developed for end-to-end testing. Playwright supports all
100+
modern rendering engines such as Chromium, WebKit and Firefox with a single
101+
:abbr:`API (Application Programming Interface)`.
102+
`pyleniumio <https://pypi.org/project/pyleniumio/#test-example>`_
103+
is a thin Python wrapper around Selenium with simple and clear syntax.
104+
`pytest-selenium <https://pypi.org/project/pytest-selenium/>`_
105+
provides fixtures that enable simple configuration of browser-based tests
106+
with `Selenium <https://www.selenium.dev>`_.
98107

99108
.. _fake_plugins:
100109

@@ -111,9 +120,6 @@ therefore not surprising that there are several plugins that fulfil this need:
111120
`pytest-factoryboy <https://pypi.org/project/pytest-factoryboy/>`_
112121
contains fixtures for `factory-boy
113122
<https://pypi.org/project/factory-boy/>`_, a database model data generator.
114-
`pytest-mimesis <https://pypi.org/project/pytest-mimesis/>`_
115-
generates fake data similar to Faker, but `Mimesis
116-
<https://pypi.org/project/mimesis/>`_ is a lot faster.
117123

118124
… various things
119125
~~~~~~~~~~~~~~~~
@@ -128,9 +134,6 @@ therefore not surprising that there are several plugins that fulfil this need:
128134
tests asynchronous functions.
129135
`pytest-mock <https://pypi.org/project/pytest-mock/>`_
130136
is a thin wrapper around the :doc:`unittest.mock <../mock>` patching API.
131-
`pytest-freezegun <https://pypi.org/project/pytest-freezegun/>`_
132-
freezes the time so that any code that reads the time, date or clock time
133-
will get the same value during a test. set a specific time.
134137
:doc:`pytest-grpc <Python4DataScience:data-processing/apis/grpc/test>`
135138
is a Pytest plugin for
136139
:doc:`Python4DataScience:data-processing/apis/grpc/index`.

0 commit comments

Comments
 (0)