Tests are kind of broken in ZODB-5.3.0. Fix setup code and disable one especially problematic test. diff -u ZODB-5.3.0/setup.py ZODB-5.3.0/setup.py --- ZODB-5.3.0/setup.py 2017-08-30 14:55:10.000000000 +0200 +++ ZODB-5.3.0/setup.py 2017-10-29 11:34:17.277953730 +0100 @@ -85,7 +85,10 @@ mod = __import__( _modname(dirpath, base, os.path.splitext(filename)[0]), {}, {}, ['*']) - _unittests_only(suite, mod.test_suite()) + try: + _unittests_only(suite, mod.test_suite()) + except AttributeError: + pass elif 'tests.py' in filenames: mod = __import__(_modname(dirpath, base, 'tests'), {}, {}, ['*']) _unittests_only(suite, mod.test_suite()) diff -u ZODB-5.3.0/src/ZODB/scripts/tests/test_repozo.py ZODB-5.3.0/src/ZODB/scripts/tests/test_repozo.py --- ZODB-5.3.0/src/ZODB/scripts/tests/test_repozo.py 2017-08-30 14:55:10.000000000 +0200 +++ ZODB-5.3.0/src/ZODB/scripts/tests/test_repozo.py 2017-10-29 11:35:10.348240386 +0100 @@ -1184,7 +1184,4 @@ #unittest.makeSuite(Test_do_backup), #TODO unittest.makeSuite(Test_do_recover), unittest.makeSuite(Test_do_verify), - # N.B.: this test take forever to run (~40sec on a fast laptop), - # *and* it is non-deterministic. - unittest.makeSuite(MonteCarloTests), ])