2

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模式`是空的。

4

1 回答 1

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
于 2013-03-20T14:50:52.890 回答