diff --git a/.travis.yml b/.travis.yml
index 74bb9f7f91a1a4e5b6cd0cbadc21740393bce875..28eef4ee9158385205a2d5dbb670938b13b689c1 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -6,12 +6,12 @@ python:
   - "2.6"
   - "2.7"
 
-install: 
+install:
   - python setup.py install
-  - pip install coverage coveralls
+  - pip install coveralls
 
-script: 
-  - coverage run --source=mwclient setup.py test
+script:
+  - python setup.py test
 
 after_success:
   - coveralls
diff --git a/setup.py b/setup.py
index 70fcdc944306fcc0d2fc68279933e530c8cd056c..570bc4dc75454766545591bd05eae1ab4176a35e 100644
--- a/setup.py
+++ b/setup.py
@@ -17,7 +17,7 @@ class PyTest(TestCommand):
 
     def initialize_options(self):
         TestCommand.initialize_options(self)
-        self.pytest_args = '-v --pep8 tests mwclient'
+        self.pytest_args = '-v --pep8 tests mwclient --cov mwclient'
 
     def finalize_options(self):
         TestCommand.finalize_options(self)
@@ -54,7 +54,7 @@ setup(name='mwclient',
       license='MIT',
       packages=['mwclient'],
       cmdclass={'test': PyTest},
-      tests_require=['pytest-pep8', 'pytest-cache', 'pytest', 'responses>=0.3.0'],
+      tests_require=['pytest-pep8', 'pytest-cache', 'pytest', 'pytest-cov', 'funcsigs', 'responses>=0.3.0'],
       install_requires=requirements,
       zip_safe=True
       )