run_tests: fix pytest selection inside tox venv

Finding the "right" pytest is challenging.  In Debian, `pytest` is
Python 2 while `pytest-3` is the Python 3 version ... but only when
outside of a virtualenv.  Inside of a virtualenv (e.g. the ones that
tox creates), we always want `pytest`.

Change-Id: Ic1fe84c10f06227bceeb9baad6a3c4598bbe9860
Reviewed-by: Peter Kjellerstedt <>
Reviewed-by: Mike Frysinger <>
Tested-by: Mike Frysinger <>
diff --git a/run_tests b/run_tests
index 6c6f859..573dd44 100755
--- a/run_tests
+++ b/run_tests
@@ -24,6 +24,10 @@
 def find_pytest():
   """Try to locate a good version of pytest."""
+  # If we're in a virtualenv, assume that it's provided the right pytest.
+  if 'VIRTUAL_ENV' in os.environ:
+    return 'pytest'
   # Use the Python 3 version if available.
   ret = shutil.which('pytest-3')
   if ret: