Gointerface接口声明实现及作用详解
286
2022-08-30
系统学习Python——单元测试unittest:框架结构(python中unittest框架)
unittest是Python的内置模块,这意味着我们不需要再进行安装。unittest支持自动化测试、测试用例间共享setUp(测试前的初始化工作)和tearDown(测试结束后的清理工作)代码块,可以将测试用例合并为集合执行,然后将测试结果展示在报告中。
unittest框架的4个重要概念
测试固件test fixture:对于测试固件,我们可以将其理解为在测试之前或者之后需要做的一些操作。例如测试执行前,可能需要打开浏览器、创建数据库连接等;测试结束后,可能需要清理测试环境、关闭数据库连接等。unittest中常用的test fixture有setUp、tearDown、setUpClass、tearDownClass。前面两个是在每个用例执行之前或之后执行,后面两个是在类执行之前或之后执行。测试用例test case:测试用例是在unittest中执行测试的最小单元。它通过unittest提供的assert方法来验证一组特定的操作或输入以后得到的具体响应。unittest提供了一个名为TestCase的基础类,可以用来创建测试用例。unittest中测试用例的方法必须以test开头,并且执行顺序依照的是方法名的ASCII值排序。测试套件test suite:测试套件就是一组测试用例,作用是将多个测试用例放到一起,执行一个测试套件就可以将这些测试用例全部执行。测试运行器test runner:测试运行器用来执行测试用例,并返回测试用例执行的结果。它还可以用图形、表格、文本等方式把测试结果形象地展现出来,如HTMLTestRunner。
unittest用例示例
下面通过代码来看一下unittest用例的基本样式:
import unittestclass MyTestClass(unittest.TestCase): def setUp(self): print('setUp') def test_first(self): self.assertEqual('hy592070616', 'hy592070616') def tearDown(self): print('tearDown')if __name__ == '__main__': unittest.main()
执行后输出如下:
setUptearDownRan 1 test in 0.000sOKProcess finished with exit code 0
其中,输出的OK代表断言成功,setUp和tearDown为程序执行的输出信息。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~