Remove tox
diff --git a/.gitignore b/.gitignore
index 11d04d10a4..71e2361629 100644
--- a/.gitignore
+++ b/.gitignore
@@ -52,7 +52,6 @@ pip-delete-this-directory.txt
 
 # Unit test / coverage reports
 htmlcov/
-.tox/
 .nox/
 .coverage
 .coverage.*
diff --git a/CHANGELOG.rst b/CHANGELOG.rst
index a455588eea..1e23a1b9f2 100644
--- a/CHANGELOG.rst
+++ b/CHANGELOG.rst
@@ -10,6 +10,7 @@ This project adheres to `Semantic Versioning <https://semver.org/>`_.
 -------------------------
 * Added support for combining cookies specified on the CLI and in a session file (`#932`_).
 * Added out of the box SOCKS support with no extra installation (`#904`_).
+* Removed Tox testing entirely (`#943`_).
 
 
 `2.2.0`_ (2020-06-18)
@@ -461,3 +462,4 @@ This project adheres to `Semantic Versioning <https://semver.org/>`_.
 .. _#925: https://github.com/jakubroztocil/httpie/issues/925
 .. _#932: https://github.com/jakubroztocil/httpie/issues/932
 .. _#934: https://github.com/jakubroztocil/httpie/issues/934
+.. _#943: https://github.com/jakubroztocil/httpie/issues/943
diff --git a/CONTRIBUTING.rst b/CONTRIBUTING.rst
index 8ecff67ffd..b51039a38c 100644
--- a/CONTRIBUTING.rst
+++ b/CONTRIBUTING.rst
@@ -123,8 +123,7 @@ so please make sure all checks pass.
 Running tests locally
 *********************
 
-HTTPie uses the `pytest`_ runner. It also uses `Tox`_ which allows you to run
-tests on multiple Python versions even when testing locally.
+HTTPie uses the `pytest`_ runner.
 
 
 .. code-block:: bash
@@ -135,9 +134,6 @@ tests on multiple Python versions even when testing locally.
     # Run tests with coverage
     make test-cover
 
-    # Run all tests in all of the supported and available Pythons via Tox
-    make test-tox
-
     # Test PEP8 compliance
     make pycodestyle
 
@@ -158,12 +154,6 @@ can run specific tests from the terminal:
     py.test tests/test_uploads.py::TestMultipartFormDataFileUpload
     py.test tests/test_uploads.py::TestMultipartFormDataFileUpload::test_upload_ok
 
-    # Run specific tests on the on all Pythons via Tox
-    # (change to `tox -e py37' to limit Python version)
-    tox -- tests/test_uploads.py --verbose
-    tox -- tests/test_uploads.py::TestMultipartFormDataFileUpload --verbose
-    tox -- tests/test_uploads.py::TestMultipartFormDataFileUpload::test_upload_ok --verbose
-
 -----
 
 See `Makefile`_ for additional development utilities.
@@ -172,8 +162,6 @@ See `Makefile`_ for additional development utilities.
 Finally, don't forget to add yourself to `AUTHORS`_!
 
 
-.. _Tox: http://tox.testrun.org
-.. _supported Python environments: https://github.com/jakubroztocil/httpie/blob/master/tox.ini
 .. _existing issues: https://github.com/jakubroztocil/httpie/issues?state=open
 .. _AUTHORS: https://github.com/jakubroztocil/httpie/blob/master/AUTHORS.rst
 .. _Makefile: https://github.com/jakubroztocil/httpie/blob/master/Makefile
diff --git a/Makefile b/Makefile
index 50637c9eda..e998cbfaa7 100644
--- a/Makefile
+++ b/Makefile
@@ -38,7 +38,7 @@ clean:
 	rm -rf $(VENV_ROOT)
 	# Remove symlink for virtualenvwrapper, if we’ve created one.
 	[ -n "$(WORKON_HOME)" -a -L "$(WORKON_HOME)/httpie" -a -f "$(WORKON_HOME)/httpie" ] && rm $(WORKON_HOME)/httpie || true
-	rm -rf .tox *.egg dist build .coverage .cache .pytest_cache httpie.egg-info
+	rm -rf *.egg dist build .coverage .cache .pytest_cache httpie.egg-info
 	find . -name '__pycache__' -delete -o -name '*.pyc' -delete
 	@echo
 
@@ -86,7 +86,7 @@ test-cover: test
 
 
 # test-all is meant to test everything — even this Makefile
-test-all: clean install test test-tox test-dist pycodestyle
+test-all: clean install test test-dist pycodestyle
 	@echo
 
 
@@ -94,12 +94,6 @@ test-dist: test-sdist test-bdist-wheel
 	@echo
 
 
-test-tox: uninstall-httpie install
-	@echo $(H1)Running tests on all Pythons via Tox$(H1END)
-	$(VENV_BIN)/tox
-	@echo
-
-
 test-sdist: clean venv
 	@echo $(H1)Testing sdist build an installation$(H1END)
 	$(VENV_PYTHON) setup.py sdist
diff --git a/requirements-dev.txt b/requirements-dev.txt
index e0ccd39ce1..8e755e73c8 100644
--- a/requirements-dev.txt
+++ b/requirements-dev.txt
@@ -1,4 +1,3 @@
-tox
 mock
 pytest
 pytest-cov
diff --git a/setup.cfg b/setup.cfg
index 7ae337612a..e672f486f9 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -10,7 +10,7 @@ addopts = --tb=native
 [pycodestyle]
 # <http://pycodestyle.pycqa.org/en/latest/intro.html#configuration>
 
-exclude = .git,.idea,__pycache__,build,dist,.tox,.pytest_cache,*.egg-info
+exclude = .git,.idea,__pycache__,build,dist,.pytest_cache,*.egg-info
 
 # <http://pycodestyle.pycqa.org/en/latest/intro.html#error-codes>
 # E241 - multiple spaces after ‘,’
diff --git a/tox.ini b/tox.ini
deleted file mode 100644
index d44bce8fd0..0000000000
--- a/tox.ini
+++ /dev/null
@@ -1,23 +0,0 @@
-# Tox (http://tox.testrun.org/) is a tool for running tests
-# in multiple virtualenvs. See ./CONTRIBUTING.rst
-
-
-[tox]
-# pypy3 currently fails because of a Flask issue
-envlist = py37
-
-
-[testenv]
-deps =
-    mock
-    pytest
-    pytest-httpbin>=0.0.6
-
-
-commands =
-    # NOTE: the order of the directories in posargs seems to matter.
-    # When changed, then many ImportMismatchError exceptions occurrs.
-    py.test \
-        --verbose \
-        --doctest-modules \
-        {posargs:./httpie ./tests}

Fixes #943 