自动化单元测试框架unittest的使用步骤

本文介绍了Python内置的unittest测试框架,包括TestCase、TestFixture、TestSuite、TextTestRunner等核心概念,并详细阐述了测试流程。同时,讨论了Fixture中的setUpClass、tearDownClass、setUp和tearDown方法的使用,以及如何进行断言和忽略测试。最后,通过实例演示了如何生成测试报告,以及在PyCharm中遇到的问题和解决方法。
摘要由CSDN通过智能技术生成

1、 unittest是python自带的单元测试框架,用来管理自动化测试用例
(1)框架解析
1、TestCase:测试用例、测试方法,以test_开头,否则不会执行
2、TestFixture测试固件:运行前后数据的处理,setUp()和tearDown()方法
3、TestSuite测试套件:通过addTest()的手动方法,将测试用例放在测试套件中,批量执行测试方法;也可以使用TestLoader自动添加测试用例到测试套件中
4、TextTestRunner:执行测试方法,把测试套件跑起来
5、TextTestResult:保存测试结果
6、TestReport:基于html的测试报告
(2)流程
有了被测试方法之后,写TestCase,以及TestFixture中的方法进行前后数据的处理,使用手动方法或者TestLoader将测试用例加载到测试套件中,使用TextTestRunner中的run()方法执行测试套件,将运行的结果放在TextTestResult中。
(3)TestFixture中的方法对比:
setUpClass():所有测试用例执行前执行一次
tearDoenClass():所有测试用例执行之后执行一次
上面这两个方法需要使用**@classmethod注解**
setUp():每个测试用例执行之前执行一次
tearDown():每个测试用例执行之后执行一次
assertEquals(args1,args2):断言,比较实际和预期结果是否一致
@unittest.skip(“skipping”):忽略测试方法的执行
(4)代码演示
1、 首先创建一个文件test_fun.py来放被测试的方法

"""
准备几个要测试的方法
"""


def add(a,b):
    return a+b
def sub(a,b):
    return a-b
def multi(a,b):
    return a*b
def div(a,b):
    return a/b
def upper_str(string):
    return string.upper()
def lower_str(string):
    return string.lower()
def square(x):
    return x**2

2、创建测试类,以Test开头

#引入unittest框架
import unittest
#引入被测试方法的文件
from test_function.test_fun  import *
#定义测试类,并继承unittest中的TestCase
class 
  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值