当你设置了复杂的用例选取规则,想要看一下本次到底会执行哪些用例的时候;
当你听过pydoc来管理用例描述,希望看一下当前都有哪些用例的时候;
你其实并不想执行用例,而是想得到用例的信息。
这时我们可以通过改写TestProgram的runTests方法来达到这个目的,实现起来非常简单:
class DryRunTestProgram(TestProgram):
def runTests(self):
def _printTest(test):
if isinstance(test, TestSuite):
for child in test:
_printTest(child)
elif isinstance(test, TestCase):
print test._testMethodName
_printTest(self.test)
class testdemo1(TestCase):
def testAAA(self):
pass
def testBBB(self):
pass
class testdemo2(TestCase):
def test111(self):
pass
def test222(self):
pass
if __name__ == '__main__':
DryRunTestProgram()
testAAA
testBBB
test111
test222