python2

The test suite runs on debuild, though test failures are ignored (since there are many). This is being worked on. Meanwhile, most module test suites have been fixed, do run them before and after working on the matching Python modules.

The package ships DEP-8 tests but those merely re-run parts of the test suites. Moreover, our DEP-8 skips many tests by unsetting several test suite “resources”, including “network” due to limited/blocked network access within CI environments. Again, do run these manually if you modify a related module.

To run a single test file before building/installing a new version:

PYTHONPATH=Lib build-shared/python Lib/test/test_xmlrpc.py
PYTHONPATH=Lib build-shared/python Lib/test/test_ssl.py
PYTHONPATH=Lib build-shared/python Lib/test/test_httplib.py
PYTHONPATH=Lib build-shared/python Lib/test/test_ftplib.py
PYTHONPATH=Lib build-shared/python Lib/test/test_urllib2net.py
...

To test exclusions, used in debian/rules and DEP-8 tests:

# skip network tests
PYTHONPATH=Lib build-shared/python -m test.regrtest -uall,-network -v test_urllib2net

Some other distros maintain legacy python2.7 support, e.g. Ubuntu and OpenSUSE.

python-django has a comprehensive test suite and is a good reverse-dependency to test. It now has testsuite triggers so it’s run by britney2 or debusine even if it’s not a direct reverse-dependency. To run autopkgtest manually:

# e.g. on buster:
autopkgtest -s -u nonroot --test-name command3 \
  python-django \
  -- null
autopkgtest -s -U \
  python-django \
  py2-binaries-to-test/*.deb \
  -- qemu ../autopkgtest-buster.img
Copyright (C) 2020, 2023, 2025, 2026 Sylvain Beucler