Running tests through `python setup.py test` is deprecated:
> WARNING: Testing via this command is deprecated and will be removed
> in a future version. Users looking for a generic test entry point
> independent of test runner are encouraged to use tox.
I am not in favor of moving back to `tox`, we should simply run tests
using `python -m pytest` (or `make test`) and that's it.
A new extra was added, `dev`, to install development requirements:
$ python -m pip install --upgrade --editable '.[dev]'
* Prefer usage of "python -m pip" instead of "pip"
It will prevent issues when users think that they are using
the correct `pip` version. It can refers to the one from the OS
Python installation, or even worse to a Python 2 installation.
Let's be clear on how to install stuff.
Also used short version of `pip` arguments, because we are all lazy :)
* Apply suggestions from code review
`py.test` was chosen over `pytest` but it is not planned for removal yet [1].
Anyway, it is a good thing to ensure we are using the correct Python version
with the right `pytest` installed, so using `python -m pytest` is recommended.
[1] https://github.com/pytest-dev/pytest/issues/1629
* Added a sub-section specifically for windows
* Wrote instructions for creating/activating venv
* Split the PS and CMD examples into two separate code blocks
* Specified language for the code blocks
* Added test instructions for windows
* Converted slash to backward
* Removed the instructions of tox testing
* Deleted tox.ini
* removed tox from requirements
* removed tox from setup.cfg
* removed tox from the Makefile
* removed tox from contributing docs
* updated the CHANGELOG
* removed tox from .gitignore