测试套件单元

2024-09-24 02:22:57 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个测试套件,我正试图让它与我创建的测试一起工作。如果我单独运行它们,但是我想在一个测试套件中运行它们,那么测试就可以工作了。下面的代码显示了创建的测试套件:

import unittest

def suite():
    modules_to_test = ('TestAbsoluteMove', 'TestContinuousMove') # and so on
    alltests = unittest.TestSuite()
    for module in map(__import__, modules_to_test):
        alltests.addTest(unittest.findTestCases(module))
    return alltests

if __name__ == '__main__':
    unittest.main(defaultTest='suite')

我已将此代码放入我的测试代码中,以便与套件相连接:

^{pr2}$

生成的错误声明不存在名为“TestAbsoluteMove”和“TestContinuousMove”的模块。有人知道如何让这个代码工作吗?在

谢谢


Tags: to代码testimportmodules套件maindef
3条回答

这就是我创建testsuite的方法(loadTestFromTestCase自动检测您的测试)

def suite():
    """ returns all the testcases in this module """
    return TestLoader().loadTestsFromTestCase(AbsoluteMoveTestSuite)

为了一次运行它们,我有一个包含所有子套件的套件(注意所有导入,您需要在它们在新模块中可用之前导入它们)

^{pr2}$

Nose让这类事情变得不费脑筋。它将自动检测您的测试并将它们作为一个套件运行。(也可以通过传递标志来运行特定的测试。)

testabsolutionmove是一个类,它需要来自某个地方。无论在何处定义AbsoluteMoveTestSuite类,都需要导入TestAbsoluteMove。在

相关问题 更多 >