diff --git a/setup.py b/setup.py
index 20f425f8782d54fe4c4e05aa6d8f8715d2310294..e605d9baf1417a4982881eef065badb79d83aaa6 100644
--- a/setup.py
+++ b/setup.py
@@ -9,7 +9,7 @@ setup(
     author="Autistici/Inventati",
     author_email="info@autistici.org",
     url="https://git.autistici.org/ai/authserv",
-    install_requires=["python-ldap", "PyOpenSSL", "Flask", "python-memcached", "nose"],
+    install_requires=["gevent", "python-ldap", "PyOpenSSL", "Flask", "python-memcached"],
     setup_requires=[],
     zip_safe=False,
     packages=find_packages(),
diff --git a/tox.ini b/tox.ini
new file mode 100644
index 0000000000000000000000000000000000000000..16cf0ded4cab9a4c532f239c1e7501ebb535790b
--- /dev/null
+++ b/tox.ini
@@ -0,0 +1,10 @@
+[testenv]
+deps=
+  python-ldap-test
+  nose
+  mock
+  coverage
+commands=
+  nosetests \
+    --with-coverage --cover-package=authserv \
+    []