Unittest自动化测试入门总结

从网上看视频教学、自己看博看等,总结了一下unittest必备的入门知识。

Unittest基本应用:

1、环境搭建:Python中直接加载了UnitTest框架,无须额外安装
2、四大组件:
a.Test fixture:setUp(前置条件)、tearDown(后置条件),用于初始化测试用例及清理和释放资源
b.Test case:测试用例,通过继承unittest.TestCase,来实现对用例的继承,测试用例都是通过test识别的。 def test_xxxxx()
c.Test suite:测试用例套件,也称之为测试用例集,可以将很多的测试用例加载到一个套件中,通过套件运行所有已经加载进来的测试用例
d.Test runner:运行器,一般通过runner来调用suite来执行测试
3、Unittest的运行机制:通过在main函数中,调用unittest.main()运行所有内容
4、setUp在用例执行之前会执行,tearDown在用例执行之后会执行,在每一个用例之前和之后都会执行
5、setUpClass 和 tearDownClass方法,在使用前需要用@classmethod进行初始化,作用:一个是在所有的setUp和tearDown运行之前,先初始化整个类,或者释放整个类的资源

UnitTest自动化实现:

1、为什么要用unittest框架?自动化测试减少冗余、便于维护,比较简便,容易维护测试用例 详见forTest2
2、ddt(data driver tests)
数据驱动,在实际测试中,单个测试是需要多种不同的条件(测试数据)对其进行测试的。
ddt的最基本应用:在class前定义@ddt装饰器,用于表明要使用ddt了 ,在基于实际的应用,选择对应的装饰器即可
data用于设置参数
unpack用于解析参数
ddt对于数据的解析方式:解析一个,传参一个
file_data:ddt中用于读取yml文件的装饰器
3、yml的几种格式:
字典:name: ‘yanhao’
字典中嵌套字典:name: ‘yanhao’
Data:
a: 1
b: 2
列表:- a
- b
- c

UnitTest断言:

1、什么是断言?用于校验实际结果与预期结果是否匹配,断言强调的是对于整个测试流程的结果进行判断,在断言的内容选择上是有要求的。
2、UnitTest中,TestCase已经提供了封装好的断言方法进行断言校验
3、每次断言的内容要是最核心的内容,即如果流程出了问题,断言一定会失败
4、断言的调用:self.assertxxxxx都是断言的方法
5、断言分很多类:基本的断言分类及用法如下:

Unittest.skip()
1、用法:在Case中,对于不需要运行的用例或者特定条件下不执行的用例,可以应用skip()来实现有条件、有选择的执行,或者绝对性跳过,用于对指定用例不执行操作。
2、使用方法:使用skip装饰器进行使用,每一个skip只对当前用例生效
对于@unittest.skip,执行的是无条件跳过该用例
对于@unittest.skipif(condition, msg),执行的是有条件的跳过该用例,当condition为True的时候,不执行该用例,并且抛出后面的msg;当condition为False的时候,执行该用例。
对于@unittest.skipunless(condition, msg),执行的是有条件的跳过该用例,当condition为False的时候,不执行该用例,并且抛出后面的msg;当condition为True的时候,执行该用例。
对于@unittest.expectedFailure(),执行的期待该用例失败,失败的话不计入失败的cases数中

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值