Day76:封装mock

本文详细介绍了Python测试中mock.patch装饰器的使用,包括概念、语法和实现数据模拟的步骤。通过patch装饰器,可以在测试范围内替换模块和类属性,模拟数据,以方便测试。文中给出了具体的代码示例,展示了如何在测试用例中使用patch装饰器对函数或类的方法进行mock,并进行断言和测试。
摘要由CSDN通过智能技术生成

1.patch装饰器的概念

  • patch装饰器是mock第二种实现数据模拟的方式,patch()充当函数装饰器,类装饰器或上下文管理器,可用于处理测试范围内的修补模块和类级属性;

2.patch装饰器语法

  • 语法:unittest.mock.patch(target,new = DEFAULT,spec = None,create = False,spec_set = None,autospec = None,new_callable = None,** kwarg )

  • 参数target 为’package.module.classname’格式的字符串,如果参数new被省略,那么target 被MagicMock代替;

  • 如果patch()用作装饰器并且省略new,则创建的mock将作为额外参数传递给装饰函数,如果patch()用作上下文管理器,则上下文管理器返回创建的mock;

  • New_Callable参数允许指定将被调用以创建新对象的其他类或可调用对象,默认情况下,使用magicMock。

3.patch装饰器实现数据模拟

修改Test.py文件中的TestData类,在测试用例前加上一个@mock.patch()装饰器

from unittest import mock
from unittest import TestCa
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值