New submission from Antoine Pitrou: subtests are a light alternative to parametered tests as in issue7897. They don't generate the tests for you, they simply allow to partition a given test case in several logical units. Meaning, when a subtest fails, the other subtests in the test will still run (and the failures will print their respective parameters).
Concretely, running the follow example: class MyTest(unittest.TestCase): def test_b(self): """some test""" for i in range(2, 5): for j in range(0, 3): with self.subTest(i=i, j=j): self.assertNotEqual(i % 3, j) will give the following output: ====================================================================== FAIL: test_b (__main__.MyTest) (i=2, j=2) some test ---------------------------------------------------------------------- Traceback (most recent call last): File "subtests.py", line 11, in test_b self.assertNotEqual(i % 3, j) AssertionError: 2 == 2 ====================================================================== FAIL: test_b (__main__.MyTest) (i=3, j=0) some test ---------------------------------------------------------------------- Traceback (most recent call last): File "subtests.py", line 11, in test_b self.assertNotEqual(i % 3, j) AssertionError: 0 == 0 ====================================================================== FAIL: test_b (__main__.MyTest) (i=4, j=1) some test ---------------------------------------------------------------------- Traceback (most recent call last): File "subtests.py", line 11, in test_b self.assertNotEqual(i % 3, j) AssertionError: 1 == 1 ---------------------------------------------------------------------- ---------- components: Library (Lib) messages: 180221 nosy: Julian, Yaroslav.Halchenko, abingham, bfroehle, borja.ruiz, brian.curtin, chris.jerdonek, eric.araujo, eric.snow, exarkun, ezio.melotti, florian-rathgeber, fperez, hpk, michael.foord, nchauvat, ncoghlan, pitrou, r.david.murray, santa4nt, spiv priority: normal severity: normal status: open title: subtests type: enhancement versions: Python 3.4 _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue16997> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com