{"id":13468656,"url":"https://github.com/man-group/pytest-plugins","last_synced_at":"2025-12-12T00:34:55.029Z","repository":{"id":36397834,"uuid":"40702744","full_name":"man-group/pytest-plugins","owner":"man-group","description":"A grab-bag of nifty pytest plugins","archived":false,"fork":false,"pushed_at":"2025-01-02T18:11:11.000Z","size":11421,"stargazers_count":590,"open_issues_count":44,"forks_count":84,"subscribers_count":20,"default_branch":"master","last_synced_at":"2025-06-16T10:46:38.136Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/man-group.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-08-14T07:52:32.000Z","updated_at":"2025-06-06T20:16:00.000Z","dependencies_parsed_at":"2024-11-13T20:18:13.025Z","dependency_job_id":"1b27f5c3-0802-4476-bcc3-ded63158644a","html_url":"https://github.com/man-group/pytest-plugins","commit_stats":{"total_commits":666,"total_committers":65,"mean_commits":"10.246153846153845","dds":0.7702702702702703,"last_synced_commit":"5f9b88a65a8c1e506885352bbd9b2a47900f5014"},"previous_names":["manahl/pytest-plugins"],"tags_count":29,"template":false,"template_full_name":null,"purl":"pkg:github/man-group/pytest-plugins","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/man-group%2Fpytest-plugins","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/man-group%2Fpytest-plugins/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/man-group%2Fpytest-plugins/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/man-group%2Fpytest-plugins/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/man-group","download_url":"https://codeload.github.com/man-group/pytest-plugins/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/man-group%2Fpytest-plugins/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261386873,"owners_count":23150876,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-07-31T15:01:15.958Z","updated_at":"2025-12-12T00:34:54.977Z","avatar_url":"https://github.com/man-group.png","language":"Python","readme":"# A goody-bag of nifty plugins for [pytest](https://pytest.org)\n\nOS | Build                                                                                                                                                            | Coverage |\n ------  |------------------------------------------------------------------------------------------------------------------------------------------------------------------| -------- |\n ![Linux](img/linux.png) | [![CircleCI (Linux)](https://circleci.com/gh/man-group/pytest-plugins/tree/master.svg?style=svg)](https://circleci.com/gh/man-group/pytest-plugins/tree/master)  | [![Coverage Status](https://coveralls.io/repos/github/manahl/pytest-plugins/badge.svg?branch=master)](https://coveralls.io/github/manahl/pytest-plugins?branch=master)\n ![Windows](img/windows.png) | [![CircleCI (Linux)](https://circleci.com/gh/man-group/pytest-plugins/tree/master.svg?style=svg)](https://circleci.com/gh/man-group/pytest-plugins/tree/master)  |\n\nPlugin | Description | Supported OS |\n------ | ----------- | ------------ |\n| [pytest-server-fixtures](pytest-server-fixtures) |  Extensible server-running framework with a suite of well-known databases and webservices included | ![Linux](img/linux.png)\n| [pytest-shutil](pytest-shutil) | Unix shell and environment management tools |![Linux](img/linux.png)\n| [pytest-profiling](pytest-profiling) | Profiling plugin with tabular heat graph output and gprof support for C-Extensions |![Linux](img/linux.png)\n| [pytest-devpi-server](pytest-devpi-server) | DevPI server fixture |![Linux](img/linux.png)\n| [pytest-pyramid-server](pytest-pyramid-server) | Pyramid server fixture |![Linux](img/linux.png)\n| [pytest-webdriver](pytest-webdriver) | Selenium webdriver fixture |![Linux](img/linux.png)\n| [pytest-virtualenv](pytest-virtualenv) | Virtualenv fixture |![Linux](img/linux.png) ![Windows](img/windows.png)\n| [pytest-qt-app](pytest-qt-app) | PyQT application fixture |![Linux](img/linux.png)\n| [pytest-listener](pytest-listener)  | TCP Listener/Reciever for testing remote systems |![Linux](img/linux.png) ![Windows](img/windows.png)\n| [pytest-git](pytest-git) | Git repository fixture |![Linux](img/linux.png) ![Windows](img/windows.png)\n| [pytest-svn](pytest-svn) | SVN repository fixture |![Linux](img/linux.png)\n| [pytest-fixture-config](pytest-fixture-config) | Configuration tools for Py.test fixtures |![Linux](img/linux.png) ![Windows](img/windows.png)\n| [pytest-verbose-parametrize](pytest-verbose-parametrize) | Makes py.test's parametrize output a little more verbose |![Linux](img/linux.png)\n\n\n## Developing these plugins\n\nAll of these plugins share setup code and configuration so there is a top-level Makefile to\nautomate process of setting them up for test and development.\n\n### Pre-requisites\n\nYou have `python` installed on your path, preferably using a `virtualenv`\n\n### Makefile targets\n\nTo install all dependencies and set up all of the packages for development simply run:\n\n```bash\n    make develop\n```\n\nTo install all the packages as wheel distributions:\n\n```bash\n    make install\n```\n\nTo run all the tests:\n\n```bash\n    make test\n```\n\n## Vagrant\n\nSome of the plugins have complex dependencies, particularly `pytest-server-fixtures`.\nTo make it easier to develop, there is a `Vagrantfile` which will setup a virtual machine\nwith all the dependencies installed to run the tests.\n\nTo set up the environment in Vagrant (requires virtualbox) and run the tests:\n\n```bash\n    $ vagrant up\n    $ vagrant ssh\n\n    # ..... inside vagrant ....\n    . venv/bin/activate\n    cd src\n    make develop\n    make test\n```\n\n## `foreach.sh`\n\nTo run a command in each of the package directories, use the `foreach.sh` script.\nThis example will build all the wheel distributions:\n\n```bash\n    ./foreach.sh python setup.py bdist_wheel\n```\n\n### Only-Changed mode\n\nTo run a command only on packages that have changed since the last tagged release, use `--changed`.\nThis example will only upload packages that need releasing:\n\n```bash\n    ./foreach.sh python setup.py bdist_wheel upload\n```\n\n### Quiet mode\n\nTo run a command with no extra output other than from what you run, use `--quiet`\n```bash\n    ./foreach.sh --quiet grep PY3\n```\n\n\n","funding_links":[],"categories":["Python","Testing Tools"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fman-group%2Fpytest-plugins","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fman-group%2Fpytest-plugins","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fman-group%2Fpytest-plugins/lists"}