pytest-xvfb 3.0.0

Last updated:

0 purchases

pytest-xvfb 3.0.0 Image
pytest-xvfb 3.0.0 Images
Add to Cart

Description:

pytestxvfb 3.0.0

A pytest plugin to run Xvfb (or Xephyr/Xvnc) for tests.


Installation
You can install “pytest-xvfb” via pip from PyPI:
$ pip install pytest-xvfb


Usage
With Xvfb and the plugin installed, your testsuite automatically runs with Xvfb. This allows tests to be run without windows popping up during GUI tests or on systems without a display (like a CI).
The plugin sees Xvfb being installed as “optional”, since the tests can still
run without it installed. If it’s unavailable, it will show an informational
message, if on Linux and a DISPLAY is available. When using
--xvfb-backend xvfb, this message will turn into a hard error instead.
If you’re currently using xvfb-run in something like a GitHub Actions YAML
file simply remove the wrapper and install this plugin instead - then you’ll
also have the benefits of Xvfb locally.


Features
You can pass --no-xvfb to explicitly turn off Xvfb (e.g. to visually
inspect a failure).
With --xvfb-backend xephyr or --xvfb-backend xvnc, you can use Xephyr
or Xvnc in place of Xvfb, e.g. to visually inspect failures.
NOTE: Support for xvnc is currently experimental and not tested on CI,
due to incompatibilities with PyVirtualDisplay and Ubuntu 22.04’s tightvncserver.
You can mark tests with @pytest.mark.no_xvfb to skip them when they’re
running with Xvfb.
A xvfb fixture is available with the following attributes:

width: The configured width of the screen.
height: The configured height of the screen.
colordepth: The configured colordepth of the screen.
args: The arguments to be passed to Xvfb.
display: The display number (as int) which is used.
backend: Either None (Xvfb), "xvfb", "xephyr", or "xvnc".

In a pytest.ini, xvfb_width, xvfb_height, xvfb_colordepth and
xvfb_args can be used to configure the respective values. In addition,
xvfb_xauth can be set to true to generate an Xauthority token.


Contributing
Contributions are very welcome. Tests can be run with tox, please ensure
the coverage at least stays the same before you submit a pull request.


License
Distributed under the terms of the MIT license, “pytest-xvfb” is free and open source software


Thanks
This pytest plugin was generated with Cookiecutter along with
@hackebrot’s Cookiecutter-pytest-plugin template.
Thanks to @cgoldberg for xvfbwrapper which was the inspiration for this
project.


Issues
If you encounter any problems, please file an issue along with a detailed description.

License:

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.