Switch testing and CI scripts to use test_requirements.txt
diff --git a/.travis.yml b/.travis.yml
index 84fbb1f..00b1b4a 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -19,12 +19,10 @@
   # Install codecov
   - if [[ $TRAVIS_PYTHON_VERSION == '3.2' ]]; then pip install coverage==3.7.1; fi
   - if [[ $TRAVIS_PYTHON_VERSION < '3.0' ]]; then pip install mock; fi
+  - pip install -r test_requirements.txt
   - pip install codecov
-  - pip install freezegun
-  - pip install pytest
 
 install:
-  - pip install six
   - ./ci_tools/retry.sh python updatezinfo.py
 
 script:
diff --git a/appveyor.yml b/appveyor.yml
index 30d7130..d8fdb8a 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -20,11 +20,8 @@
   - set pip_cmd=%PYTHON%/python.exe -m pip
 
   # Download scripts and dependencies
-  - "%pip_cmd% install six"
-  - "%pip_cmd% install coverage"
+  - "%pip_cmd% install -r test_requirements.txt"
   - "%pip_cmd% install codecov"
-  - "%pip_cmd% install pytest"
-  - "%pip_cmd% install freezegun"
 
   # This frequently fails with network errors, so we'll retry it up to 5 times
   # with a 1 minute rate limit.
diff --git a/setup.py b/setup.py
index ff7d2f5..e2151f4 100644
--- a/setup.py
+++ b/setup.py
@@ -24,7 +24,6 @@
       package_data={"dateutil.zoneinfo": ["dateutil-zoneinfo.tar.gz"]},
       zip_safe=True,
       requires=["six"],
-      tests_require=["freezegun", "pytest"],
       install_requires=["six >=1.5"],  # XXX fix when packaging is sane again
       classifiers=[
           'Development Status :: 5 - Production/Stable',
diff --git a/tox.ini b/tox.ini
index 45c9e19..0f9909a 100644
--- a/tox.ini
+++ b/tox.ini
@@ -11,5 +11,4 @@
 
 [testenv]
 commands = pytest {posargs}
-deps =
-    six,pytest,freezegun
+deps = -rtest_requirements.txt
\ No newline at end of file