diff --git a/.travis.yml b/.travis.yml
index 8465e77d966aebd2c4fa99431f65acd5ee33a592..87c220995b6b0cb955559dd396e7233ff26dd36e 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -5,8 +5,6 @@ python:
  - "3.4"
  - "3.5"
  - "pypy"
-before_script:
- - pip install codeclimate-test-reporter
 script:
  - python compile_definitions.py
  - python setup.py nosetests
diff --git a/setup.py b/setup.py
index fdca3702103260b1aa9fa30e61d8b41f899b9e94..94423a0ababf20f084ae8da8988fc00320a802cb 100644
--- a/setup.py
+++ b/setup.py
@@ -10,7 +10,7 @@ setup(keywords=['amqp', 'rabbitmq', 'client', 'network', 'ha', 'high availabilit
 Also, handles your reconnects and transactionality THE RIGHT WAY, though somewhat opinionated''',
       install_requires=['six', 'monotonic', 'futures'],
       # per coverage version for codeclimate-reporter
-      tests_require=["nose", 'coverage==4.0'],
+      tests_require=["nose", 'coverage==4.0', 'codeclimate-test-reporter'],
       test_suite='nose.collector'
      )