Python UnitTest测试框架的使用说明(一)

8 篇文章 0 订阅
8 篇文章 0 订阅

一、UnitTest测试框架介绍

UnitTest测试框架适用于单元测试、web自动化测试、接口测试等,此测试框架的特点:1、可以帮助我们很好的管理测试用例;2、提供了丰富的断言方法;3、自动生成测试报告。下面就对UnitTest测试框架如何使用进行说明。

二、UnitTest核心的要素

1、TestCase:测试用例
2、TestSuite:测试套件, 功能是可以把多个测试用例放入到一个套件中,方便统一管理
3、TestRunner:执行测试用例
4、TestLoader:自动可以寻找并把测试用例仿佛到测试套件中
5、Fixture:用例执行顺序

TestCase-测试用例的基本类

定义我们测试类时,必须继承unitest.TestCase父类,类中的每个方法必须以test头。

代码演示

import unittest
# 写一个函数,要测试这个函数是否正确
# sum的功能是有两个形参, 返回值是这两个形参相加的和
def sum(a, b):
    return a + b

class Test_Case(unittest.TestCase):

    def test_01(self):
        result = sum(1,2)
        print(result)

    def test_02(self):
        result = sum(2, 2)
        print(result)

注意:1、这里文件名称尽量不要用中文;2、鼠标放到代码的最后面, 右键,选择在unittest中运行代码

TestSuite-测试套件

就相当于将多个TestCase写的测试用例打包如一个套件,方便我们管理和执行我们需要执行的case

代码演示

import  unittest
import Base # 导入测试用例文件
\# 创建测试套件
suite = unittest.TestSuite()
\# 添加测试用例,Base文件下的Test_Case类中的test_01方法
suite.addTest(Base.Test_Case("test_01"))
suite.addTest(Base.Test_Case("test_02"))

实例化测试套件后,然后使用里面的addTest()方法添加测试用例

TextTestRunner-执行测试套件TestSuite中的测试用例

import  unittest
import Base # 导入测试用例文件
# 创建测试套件
suite = unittest.TestSuite()
# 添加测试用例,Base文件下的Test_Case类中的test_01方法
suite.addTest(Base.Test_Case("test_01"))
suite.addTest(Base.Test_Case("test_02"))

# 执行测试套件中的测试用例
runner = unittest.TextTestRunner()
runner.run(suite)

图解

TestLoader-自动查找符合条件的测试用例

自动查找符合条件的py文件中的测试用例,把找到的测试用例添加到测试套件TestSuite中,使用discover()方法进行查找。

import  unittest

# 使用TestLoader添加测试用例
suite = unittest.TestLoader().discover("./","test*.py") # 从当前目录查找,test开头,扩展名为.py的文件
# 执行测试套件中的测试用例
runner = unittest.TextTestRunner()
runner.run(suite)

说明:在这里py文件名支持*号通配符

执行测试用例的两个方法

方法一:用TestSuite的addTest方法,把每个测试用例都添加到套件中
方法二:用TestLoad,统一把所有符合条件的测试用例添加到套件中
两种方法的使用场景:
当有大量测试用例,在不同的py文件中, 适合用方法二
虽然有大量测试用例,但只执行其中几个,适合用方法一

本期介绍到这里,下期继续进行介绍UnitTest核心的要素中的Fixture,并将UnitTest框架中的断言方法进行介绍!!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值