【UnitTest】UnitTest的简单实现

市场上有很多的测试框架,选择哪款测试框架其实无所谓,只要能解决问题,就是好的测试方式。

UnitTest 原本是 python 自带的单元测试框架,在逐渐完善加强功能的过程中,成为目前自动化测试领域比较主流的框架。

官方文档:点这里

UnitTest 的一些概念

  • test fixture(测试固件)
    test fixture表示执行测试时所需的准备工作,以及相关的清理操作。比如,创建临时目录或启动服务器进程等操作。主要通过 setUp/tearDown 以及 setUpClass/tearDownClass 实现。
  • test case(测试用例)
    unittest提供了一个基类TestCase,创建新测试类的时候,必须要继承该基类。
  • test suite(测试套件)
    用于聚合一起执行的测试。即将需要执行的测试用例整合起来,作为一个测试集,使用命令可以直接执行该测试集。
  • test runner(测试执行器)
    test runner是用于执行测试并提供结果的组件,且可以通过图形界面、文本或返回特殊值来表示执行测试的结果。

UnitTest 的运行demo

  1. 导入unittest模块
  2. 创建一个测试类,并继承unittest模块中的TestCase类
  3. 定义测试用例,函数名以test开头
  4. 完善测试用例的代码逻辑,如增加断言机制
  5. 然后就可以运行啦
  • 测试demo
# 导入unitTest 默认库,这是python自带的库,不需要安装
import unittest
# 注意一定要继承基类 TestCase
class CasesDemo(unittest.TestCase):
    def test_1(self):
        print("test1")

    def test_2(self):
        print("test2")

    def test_3(self):
        print("test3")

if __name__ == "__main__":
	# 执行测试用例
    unittest.main()
  • 运行结果

运行结果

UnitTest 的一些基本规则

  • 所有的UnitTest类,如果需要使用,则一定要继承为TestCase类
  • TestCase中默认已经封装有很多的断言方法,可以直接调用,通过 self 进行调用
  • 所有用例都需要用test开头
    每一个以test开头的函数就是一个测试用例
    如图有 test_1,test_2,test_3 共三个测试用例
    在这里插入图片描述
  • 用例的运行顺序都是固定的模式,基于UnitTest本身的内部机制。目前是基于ASCII码的大小规则执行的:0-9<A-Z<a-z。
    在这里插入图片描述
  • setUp/tearDown的作用域分为两种,函数和类
  • setUpClass/tearDownClass
    • setUpClass:作用域为类,只在该类执行前先执行一遍
    • tearDownClass:作用域为类,只在该类执行后执行一遍
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值