• Stars
    star
    545
  • Rank 78,383 (Top 2 %)
  • Language
    Python
  • License
    MIT License
  • Created over 8 years ago
  • Updated 21 days ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A grab-bag of nifty pytest plugins

A goody-bag of nifty plugins for pytest

OS Build Coverage
Linux CircleCI (Linux) Coverage Status
Windows Travic CI (Windows)
Plugin Description Supported OS
pytest-server-fixtures Extensible server-running framework with a suite of well-known databases and webservices included Linux
pytest-shutil Unix shell and environment management tools Linux
pytest-profiling Profiling plugin with tabular heat graph output and gprof support for C-Extensions Linux
pytest-devpi-server DevPI server fixture Linux
pytest-pyramid-server Pyramid server fixture Linux
pytest-webdriver Selenium webdriver fixture Linux
pytest-virtualenv Virtualenv fixture Linux Windows
pytest-qt-app PyQT application fixture Linux
pytest-listener TCP Listener/Reciever for testing remote systems Linux Windows
pytest-git Git repository fixture Linux Windows
pytest-svn SVN repository fixture Linux
pytest-fixture-config Configuration tools for Py.test fixtures Linux Windows
pytest-verbose-parametrize Makes py.test's parametrize output a little more verbose Linux

Developing these plugins

All of these plugins share setup code and configuration so there is a top-level Makefile to automate process of setting them up for test and development.

Pre-requisites

You have python installed on your path, preferably using a virtualenv

Makefile targets

To install all dependencies and set up all of the packages for development simply run:

    make develop

To install all the packages as wheel distributions:

    make install

To run all the tests:

    make test

Vagrant

Some of the plugins have complex dependencies, particularly pytest-server-fixtures. To make it easier to develop, there is a Vagrantfile which will setup a virtual machine with all the dependencies installed to run the tests.

To set up the environment in Vagrant (requires virtualbox) and run the tests:

    $ vagrant up
    $ vagrant ssh

    # ..... inside vagrant ....
    . venv/bin/activate
    cd src
    make develop
    make test

foreach.sh

To run a command in each of the package directories, use the foreach.sh script. This example will build all the wheel distributions:

    ./foreach.sh python setup.py bdist_wheel

Only-Changed mode

To run a command only on packages that have changed since the last tagged release, use --changed. This example will only upload packages that need releasing:

    ./foreach.sh python setup.py bdist_wheel upload

Quiet mode

To run a command with no extra output other than from what you run, use --quiet

    ./foreach.sh --quiet grep PY3

More Repositories

1

dtale

Visualizer for pandas data structures
TypeScript
4,491
star
2

arctic

High performance datastore for time series and tick data
Python
3,031
star
3

ArcticDB

ArcticDB is a high performance, serverless DataFrame database built for the Python Data Science ecosystem.
C++
1,097
star
4

notebooker

Productionise & schedule your Jupyter Notebooks as easily as you wrote them.
Python
834
star
5

PythonTrainingExercises

Code to exercise your Python knowledge.
Python
254
star
6

dapr-sidekick-dotnet

Dapr Sidekick for .NET - a lightweight lifetime management component for Dapr
C#
172
star
7

mdf

Data-flow programming toolkit for Python
Python
161
star
8

PyBloqs

Python
146
star
9

page-objects

Page Objects web testing pattern for Python
Python
127
star
10

pynorama

Natural Language Processing Visualization in Python
JavaScript
107
star
11

partialtesting

Run only the tests that are relevant for your changes
Python
74
star
12

jupyterlab-autoplot

Magical Plotting in JupyterLab
Python
63
star
13

okcli

An Oracle-DB command line client
Python
49
star
14

adaero

A platform for managing peer-to-peer feedback
Python
43
star
15

pkglib

Company-centric Python packaging and testing library
Python
39
star
16

prometheus-flashblade-exporter

Export metrics from Pure Storage FlashBlade to Prometheus
Go
29
star
17

openstack_load_leveller

Openstack Load Leveller / Load Balancer
Python
28
star
18

mockextras

Addon library for the python Mock library
Python
25
star
19

hubot-servicenow-tickets

a servicenow plugin for hubot
JavaScript
20
star
20

jenkins-blueprint-plugin

Build Jenkins projects according to a .jenkins.yml file in the repository.
Java
17
star
21

ftp-coredump

FTP core dump script and related Ansible roles
Shell
13
star
22

servicenow-lite

utility library for interacting with servicenow
JavaScript
11
star
23

hiveminder

Python
8
star
24

hexplode

Python
8
star
25

microbit

Information and examples about the BBC micro:bit
Python
5
star
26

pydata2022

3
star