python unittest 之mock学习笔记(续一)
来源:互联网 发布:csocket编程详解 编辑:程序博客网 时间:2024/05/16 09:59
假设有文件fun1和class2,class2类中的函数调用了fun1中的函数。利用mock方法生成fun1中函数的一个fake返回值,在此基础上,对class2类中的函数进行单元测试。
代码如下:
fun1文件
#!/usr/bin/env python# -*- coding: utf-8 -*-# fun1.pydef flag(): return 1
classs2文件
#!/usr/bin/env python# -*- coding: utf-8 -*-# class2.pyimport fun1class Class2(object): def adds(self,a,b,c): if fun1.flag(): return (a+b+c) else: return (a+b)
对class2利用mock测试文件:
#!/usr/bin/env python# -*- coding: utf-8 -*-# ClassStudy.pyimport class2import mockimport unittestclass Class2TestCase(unittest.TestCase): @mock.patch('class2.fun1') def test_adds(self, mock_fun1): # 实例化Class2 c2 = class2.Class2() # 设置class2类中的函数调用fun1中的flag为0 # 则调用class2类中的函数adds返回a+b print ("设置class2类中的函数调用fun1中的flag为0") print ("则调用class2类中的函数adds返回a+b") mock_fun1.flag.return_value = 0 num = c2.adds(1,2,3) self.assertEqual(num,3) # 设置class2类中的函数调用fun1中的flag为1 # 则调用class2类中的函数adds返回a+b+c print ("设置class2类中的函数调用fun1中的flag为1") print ("则调用class2类中的函数adds返回a+b+c") mock_fun1.flag.return_value = -1 num = c2.adds(1, 2, 3) self.assertEqual(num, 6)
0 0
- python unittest 之mock学习笔记(续一)
- python unittest 之mock学习笔记
- python unittest 之mock学习笔记(续二)
- python笔记之unittest
- Python 单元测试库 Mock unittest
- selenium-Python之unittest(一)
- Python unittest 测试框架学习笔记
- Python学习之单元测试unittest详解
- python unittest小结(一)
- Python中的模块学习之mock模块
- python 单元测试的模块 pyUnit(unittest),mock与Python测试
- python测试之unittest
- python测试之unittest
- Python 之unittest框架
- Python之unittest
- python单元测试之unittest
- UnitTest++ 学习笔记
- unittest 中的 mock框架
- 【设计模式】创建型模式之原型Prototype
- Android SurfaceView实战 打造抽奖转盘
- serservlet 一生
- CodeForces 638 A Home Numbers(水。)
- 使用maven mvn archetype:create 创建maven项目出错
- python unittest 之mock学习笔记(续一)
- scala学习之scala与java的一些区别(一)
- 《JavaScript学习笔记四》:getElementsByTagName的使用以及全选、反选和取消功能实现
- Cache——缓存
- zigbee基础应用(三)外部中断
- Least Squares Method & Gradient Descent
- 理工OJ刷题分数晋级前三十——纪念一下(坚持才是你对)
- Linux驱动开发、18-I2C子系统之用户态驱动设计
- 20160529_线程范围内数据共享