diff --git a/doc/build/changelog.rst b/doc/build/changelog.rst
index a371f7e..29914a8 100644
--- a/doc/build/changelog.rst
+++ b/doc/build/changelog.rst
@@ -10,6 +10,13 @@
     :released:
 
     .. change::
+        :tags: feature, test
+
+      The default test runner is now py.test.  Running "python setup.py test"
+      will make use of py.test instead of nose.  nose still works as a test
+      runner as well, however.
+
+    .. change::
         :tags: bug, lexer
         :pullreq: github:19
 
diff --git a/setup.py b/setup.py
index 56754aa..5b64d3f 100644
--- a/setup.py
+++ b/setup.py
@@ -1,4 +1,5 @@
 from setuptools import setup, find_packages
+from setuptools.command.test import test as TestCommand
 import os
 import re
 import sys
@@ -13,8 +14,8 @@
     raise Exception("Mako requires Python 2.6 or higher.")
 
 markupsafe_installs = (
-            sys.version_info >= (2, 6) and sys.version_info < (3, 0)
-        ) or sys.version_info >= (3, 3)
+    sys.version_info >= (2, 6) and sys.version_info < (3, 0)
+) or sys.version_info >= (3, 3)
 
 install_requires = []
 
@@ -26,6 +27,26 @@
 except ImportError:
     install_requires.append('argparse')
 
+
+class PyTest(TestCommand):
+    user_options = [('pytest-args=', 'a', "Arguments to pass to py.test")]
+
+    def initialize_options(self):
+        TestCommand.initialize_options(self)
+        self.pytest_args = []
+
+    def finalize_options(self):
+        TestCommand.finalize_options(self)
+        self.test_args = []
+        self.test_suite = True
+
+    def run_tests(self):
+        # import here, cause outside the eggs aren't loaded
+        import pytest
+        errno = pytest.main(self.pytest_args)
+        sys.exit(errno)
+
+
 setup(name='Mako',
       version=VERSION,
       description="A super-fast templating language that borrows the \
@@ -47,8 +68,8 @@
       url='http://www.makotemplates.org/',
       license='MIT',
       packages=find_packages('.', exclude=['examples*', 'test*']),
-      tests_require=['nose >= 0.11', 'mock'],
-      test_suite="nose.collector",
+      tests_require=['pytest', 'mock'],
+      cmdclass={'test': PyTest},
       zip_safe=False,
       install_requires=install_requires,
       extras_require={},
diff --git a/tox.ini b/tox.ini
index d73c377..19016de 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,16 +1,30 @@
 # content of: tox.ini , put in same dir as setup.py
 [tox]
-envlist = py{26,27,33,34}
+minversion=1.8.dev1
+envlist = py{26,27,34,35}
 
 [testenv]
+cov_args=--cov=mako --cov-report term --cov-report xml
+
 deps=pytest
-     py{26,27}: mock
+     mock
      beaker
      markupsafe
      pygments
      babel
      dogpile.cache
      lingua<4
-     
-commands=py.test
+     cov: pytest-cov
 
+setenv=
+    cov: COVERAGE={[testenv]cov_args}
+
+commands=py.test {env:COVERAGE:} {posargs}
+
+
+[flake8]
+
+show-source = True
+ignore = E711,E712,E721,D,N
+# F841,F811,F401
+exclude=.venv,.git,.tox,dist,doc,*egg,build
