单元测试基本概念
测试:在规定的条件下对软件进行操作,发现软件存在的逻辑,功能,性能等问题
单元测试:对软件设计的最小单元进行正确性检测的测试,将可能存在的错误在最小范围内发现解决。
单元测试目的:发现模块内部逻辑,语法,算法,功能等错误。
单元测试方式:代码级别测试和模块功能测试
代码级别测试:
熟悉模块功能,内部逻辑与接口,编写测试用例;
1. 接口测试:确保接口实现正确,符合设计文档规范或者约定
2. 数据结构测试,确保数据结构可用,例如数据库、文件、自定义数据结构
3. 边界测试:对于边界值进行检测
模块功能测试:通过黑盒,对模块进行功能测试
单元测试其他测试项:性能,代码规范等
通常测试用例的编写
最简单的需求:测试加法/减法/sum
代码实现:
加法:add(x, y, *arg)
减法: sub(x, y, *arg)
sum是内置方法直接测试
# coding=utf-8
def add(x, y, *arg):
x += y
for val in arg:
x += val
return x
def sub(x, y, *arg):
x -= y
for val in arg:
x -= val
return x
def div(x, y):
return x/y
if __name__ == '__main__':
print('div(10,5)=', div(10,5))
print('add(10,20)', add(10,20))
print(add(10, 20, 10))
print(sub(10, 5))
print(sub(10, 5, 5))
unittest单元测试
unittest:Python内置的一个单元测试模块
unittest完整测试用例:
1. 测试环境准备
2. 测试代码执行
3. 测试环境还原
4. 测试结果分析