如何调查python unittest load_tests方法中的错误?

时间:2013-03-20 14:43:46

标签: python unit-testing python-2.7

Python unittest有一个方法load_tests,从理论上讲,它可以在模块中用来定义要加载的测试。我试图使用“无所事事”的例子:

def load_tests(loader, standard_tests, pattern):
    # top level directory cached on loader instance
    this_dir = os.path.dirname(__file__)
    package_tests = loader.discover(start_dir=this_dir, pattern=pattern)
    standard_tests.addTests(package_tests)
    return standard_tests

并收到错误:

ERROR: LoadTestsFailure test_example

没有在我的模块中指定load_tests,测试功能正确。我怎样才能发现我遇到的问题?

更多信息:this_dir是有效路径,loader<unittest.loader.TestLoader`` object and pattern`为空。

1 个答案:

答案 0 :(得分:0)

如果你使用像PyDev这样的ide你可以添加一个断点,或者你可以添加一个try / except块:

def load_tests(loader, standard_tests, pattern):
    # top level directory cached on loader instance
try:
    this_dir = os.path.dirname(__file__)
    package_tests = loader.discover(start_dir=this_dir, pattern=pattern)
    standard_tests.addTests(package_tests)
except Exception as e:
    print 'Error loading tests: %s' % str(e)
return standard_tests