TestResult如何使用
时间: 2023-07-20 19:38:23 浏览: 108
我们可以通过在测试用例中创建一个`TestResult`对象,并将其传递给`TestCase`类中的`run`方法,来收集和报告测试结果。下面是一个示例:
```
import unittest
class MyTestCase(unittest.TestCase):
def test_addition(self):
self.assertEqual(1+2, 3)
def test_subtraction(self):
self.assertEqual(4-2, 2)
if __name__ == '__main__':
suite = unittest.TestSuite()
suite.addTest(MyTestCase('test_addition'))
suite.addTest(MyTestCase('test_subtraction'))
result = unittest.TestResult()
suite.run(result)
print(result.wasSuccessful())
```
在上述示例中,我们首先定义了一个名为MyTestCase的测试类,其中包含两个测试方法test_addition和test_subtraction。然后,我们创建了一个TestSuite对象,并将MyTestCase类中的两个测试方法都添加到该TestSuite对象中。接着,我们创建了一个`TestResult`对象,并使用`run`方法执行TestSuite中的所有测试用例,并将测试结果保存在`TestResult`对象中。最后,我们使用`wasSuccessful`方法判断测试是否全部通过,并输出测试结果。
需要注意的是,我们也可以通过在命令行中执行`python -m unittest`命令来执行测试用例,并自动使用`TestResult`对象收集和报告测试结果。在这种情况下,`TestResult`对象会自动由unittest框架创建和使用,我们不需要手动创建和使用它。
阅读全文