我们如何决定是使用unittest.main()、测试套件还是实例化对象和运行方法?

2024-04-20 06:32:29 发布

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

您好,我有两种运行unittest的方法

  1. 使用unittest.main()
if __name__ == '__main__':
    unittest.main()
  1. 套房:
def suite():
    suite = unittest.TestSuite()
    suite.addTest(WidgetTestCase('test_default_widget_size'))
    suite.addTest(WidgetTestCase('test_widget_resize'))
    return suite

if __name__ == '__main__':
    runner = unittest.TextTestRunner()
    runner.run(suite())
  1. 对象实例化:
if __name__ == '__main__':
    Obj = WidgetTestCase()
    Obj.methodname() # this can either be one of test methods or a method that invokes multiple test methods.

为什么我们有很多方法做同样的事情?如何决定使用哪种方法


Tags: 方法nametestobjifmaindefunittest
1条回答
网友
1楼 · 发布于 2024-04-20 06:32:29

这是粒度和易用性的问题

main()是最简单、最流行的形式。你只需运行你的模块,它就会为你发现所有的测试,你不必什么都不做

其他方法使您能够更精确地控制要测试的内容

相关问题 更多 >