How does Python's unittest module detect test cases?
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试): 问题: I was wondering when we run unittest.main() , how does Python know what subclasses unittest.Testcase has? For example, if I add a class FromRomanBadInput(unittest.TestCase) , how does unittest know to run this? 回答1: So I looked around in my Python27/Lib directory... unittest.main is actually an alias for a class, unittest.TestProgram . So what happens is you construct an instance of this, and its __init__ runs, which does a bunch of sanity checks and configuration, including a dynamic import of the module that you called it from (it uses the