unittest使用

Day74 unittest使用

unittest库介绍、unittest库中的基本组件、TestCase类的属性、TestSuite类的属性、TextTextRunner类的属性

09-30侠课岛    基础入门       

后端/后端/Python 由浅入深入门 19     0     278

总结

1.单元测试

  • 单元测试是指对软件中的最小可测试单元进行检查和验证,Python中有一个自带的单元测试框 架unittest模块,不仅可以适用于单元测试,还可以适用WEB自动化测试用例的开发与执行;

2.unittest库中的基本组件

  • unittest.TestCase():是所有测试用例类继承的基本类,一个类只要继承了unittest的 TestCase类就是一个测试用例类,就可以在类中写测试用例;

  • unittest.TestSuite():用来创建测试套件,其中有一个addTest()方法可以将一个或多个测试用 例添加到测试套件中;

  • unittest.TextTextRunner():通过该类中的run()方法来运行suite所组装的测试用例;

  • unittest.defaultTestLoader():通过该类下面的discover()方法可自动根据测试目录start_dir匹 配查找测试用例模块(以test开头,以.py结尾的文件,例如:test*.py), 并将查找到的测试用例 组装到测试套件,因此可以直接通过run()方法执行discover;

  • unittest.skip():装饰器,可过滤不需要执行的用例,使这个用例不执行;

  • unittest.main():可以方便的将一个单元测试模块变为可直接运行的测试脚本,main()方法使 用TestLoader类来搜索所有包含在该模块中以“test”命名开头的测试方法,并自动执行他们 ;

3.TestCase类中的方法

  • setUp()方法:用于测试用例执行前的初始化;

  • tearDown()方法:用于测试用例执行之后的善后工作,如关闭数据库连接,关闭文件;

  • assert*()方法:相当于if-else里面的条件判断;

4.unittest中常用的断言方法

  • assertEqual(self, first, second, msg=None):判断两个参数相等;

  • assertNotEqual(self, first, second, msg=None):判断两个参数不相等;

  • assertTrue(self, expr, msg=None):判断是否为真;

  • assertFalse(self, expr, msg=None):判断是否为假;

  • 更多的可以查看官网:https://docs.python.org/3/library/unittest.html#assert-methods

5.编写测试用例

  • 首先从unittest模块中导入TestCase、main等需要用到的类;

  • 然后自定义一个类继承TestCase类;

  • 可以重写TestCase类中的setUp()初始化方法,和tearDown()清理方法,这两个方法是成对出 现的;

  • 然后编写以字母开头的测试用例,执行顺序默认是根据ASCII码的顺序加载测试用例,数字与字 母的顺序为:0-9,A-Z,a-z

  • 最后调用unittest.main()方法将一个单元测试模块变成可以直接运行的测试脚本,然后自动执 行测试用例;

本教程图文或视频等内容版权归侠课岛所有,任何机构、媒体、网站或个人未经本网协议授权不得转载、转贴或以其他方式复制发布或发表。

评价

19

本课评分:
  •     非常好
难易程度:
  •     适中的

内容目录



|
教程
粉丝
主页

签到有礼

已签到2天,连续签到7天即可领取7天全站VIP

  • 1
    +2 金币
  • 2
    +3 金币
  • 3
    +5 金币
  • 6
    +7 金币
  • 5
    +6 金币
  • 4
    暖心福利
    自选分类VIP ×1天
  • 7
    惊喜大礼

    自选分类VIP ×3天 +20金币
  • 持续签到 +8 金币

金币可以用来做什么?