10-Mock模拟接口返回数据
1、安装mock
方法一:pip安装
命令行直接输入:pip install mock
方法二:官网下载mock安装包安装
下载安装包后,解压,命令行进入解压目录,执行python setup.py install
2、mock模拟返回值
1)不封装,mock模拟返回值
# encoding:utf-8
from mock import mock
import unittest
from base.requestsDemo import SendMain # 创建测试类,继承unittest.TestCase
class MockTest(unittest.TestCase):
def setUp(self):
self.run = SendMain() def test_1(self):
# 定义请求的post数据并返回
postData = {'username': 'wangling', 'password': ''}
# 定义请求的post url
postUrl = 'http://127.0.0.1:8000/postDataHandle/'
# 定义请求的响应结果
respnse_data = postData
# 响应数据
mockData = mock.Mock(return_value=respnse_data)
# mockData是send_main方法的模拟值
self.run.send_main = mockData
res = self.run.send_main(postUrl, 'POST', postData)
print res def test_2(self):
getData = {'username': 'xiaohua', 'mobile': '', 'data': 'haha'}
getUrl = 'http://127.0.0.1:8000/getDataHandle'
mockData = mock.Mock(return_value=getData)
self.run.send_main = mockData
res = self.run.send_main(getUrl, 'GET', getData)
print res if __name__ == '__main__':
unittest.main()
2)封装,mock模拟返回值
可以将mock模拟返回结果封装一下,使代码重用性更高,具体如下:
# coding:utf-8
from mock import mock # 模拟mock封装
def mock_test(mock_method,url, method,response_data,request_data=None):
mock_method = mock.Mock(return_value=response_data)
res = mock_method(url, method, request_data)
return res
调用如下:
# encoding:utf-8
import unittest
from base.requestsDemo import SendMain
from base.mockdemoRe import mock_test # 创建测试类,继承unittest.TestCase
class MockTest(unittest.TestCase):
def setUp(self):
self.run = SendMain() def test_2(self):
getData = {'username': 'xiaohua', 'mobile': '', 'data': 'haha'}
getUrl = 'http://127.0.0.1:8000/getDataHandle'
respnseDate = getData
mock_test(self.run.send_main,getUrl,'GET',respnseDate,getData)
res = self.run.send_main(getUrl, 'GET', getData)
print res if __name__ == '__main__':
unittest.main()
10-Mock模拟接口返回数据的更多相关文章
- mock模拟接口返回数据
mock,是python中模拟接口返回数据 1.安装 pip install mock import unittest from mock import Mock def add(a,b): pass ...
- vue项目中使用mockjs模拟接口返回数据
Mock.js 是一个模拟数据生成器,利用它,可以拦截ajax请求,直接模拟返回数据,这样前后端只要约定好数据格式,前端就不需要依赖后端的接口,可以直接使用模拟的数据了. 网上介绍mock的教程也较多 ...
- python接口自动化26-参数关联和JSESSIONID(上个接口返回数据作为下个接口请求参数)
前言 参数关联是接口测试和性能测试最为重要的一个步骤,很多接口的请求参数是动态的,并且需要从上一个接口的返回值里面取出来,一般只能用一次就失效了. 最常见的案例就是网站的登录案例,很多网站的登录并不仅 ...
- 酷友观点/经验:支付接口返回数据接收地址,session数据丢失(或者说失效)的问题浅析(原创文章)
酷友观点/经验:支付接口返回数据接收地址,session数据丢失(或者说失效)的问题浅析(原创文章) 最近手头在开发一个游戏官网,在支付模块采用神州付技术支持,神州付数据表单中要求提供服务器返回地 ...
- python3乱码问题:接口返回数据中文乱码问题解决
昨天测试接口出现有一个接口中文乱码问题,现象: 1 浏览器请求返回显示正常 2 用代码请求接口返回数据中文显示乱码 3 使用的python3,python3默认unicode编码,中文都是可以正常显示 ...
- carry-检查数据接口返回数据合法性
问题背景: 在测试&部署监控过程中,我们常常会遇到外部接口返回数据不靠谱的时候.最常见的场合是从某个http获取如json和xml等结构化的结果,进行解析并处理,在这时候出现以下这几种常见类型 ...
- 通过Fiddler肆意修改接口返回数据进行测试
[本文出自天外归云的博客园] 方法介绍与比对 在测试的过程中,有的需求是这样的,它需要你修改接口返回的数据,从而检查在客户端手机app内是否显示正确,这也算是一种接口容错测试,接口容错测试属于app性 ...
- POST请求成功,但接口返回数据不正确
事件:使用Jmeter做APP的搜索接口测试,请求成功了,但无论keyword是什么“内容”(这里的内容是带引号的哦),接口返回的内容都是:未匹配到搜索结果 排查问题: keyword=“世界” st ...
- Mbp通过筛选器和中间件实现异常,日志,事务及接口返回数据格式化aop处理.
Mbp应用服务层的AOP实现 实现方法:asp.net core mvc 筛选器 + 中间件 日志,事务,和接口返回结果统一格式化采用操作筛选器,而异常处理采用中间件来处理. 最开始,我是打算用aut ...
随机推荐
- as3.0 比较两个数组
var arr1:Array=[1,2,3,4] var arr2:Array=[1,2,4,3] trace(arr1.join(",") == arr2.join(" ...
- win7系统标准用户恢复administrator账号方法
一次误操作,把管理员账号给禁用了,满眼的泪花~~~~~~~~~ 标准用户,什么都干不了,怎么办呢????? 度娘一下,各种奇葩答案,就是解决不了 呵呵,最后找到了解决方法: 1.开机后BIOS过后,按 ...
- formValidator 插件 使用总结
1. 大小写的问题, formvalidator 的属性 大小写问题一定要注意, 在踩过的坑里就包括这个, 把所有属性的第二个字母的开头全部写成大写 ,导致提示信息不能用,这个问题纠结了好久 2.er ...
- CentOS7.2 1511部署RabbitMQ
一.安装RabbitMQ依赖的的Erlang最小支持包(当然也可以安装完整的Erlang) 1.下载RabbitMQ的Erlang最小支持包源文件 git clone https://github.c ...
- Git冲突标记介绍
<<<<<<< head 是指你本地的分支的 <<<<<<< HEADb789=======b45678910> ...
- MathExam Lv2
一个大气又可爱的算术题----211606360 丁培晖 211606343 杨宇潇 一.预估与实际 PSP2.1 Personal Software Process Stages 预估耗时(分钟) ...
- Mysql运行状态查询命令及调优详解
(转载自点击打开链接) MySQL运行状态及调优(一) 一.查看MySQL运行情况SHOW STATUS; 二.查看INNODB数据库引擎运行状态SHOW ENGINE INNODB STATUS; ...
- 装了SVN软件,但是文件夹没有绿色和红色的图标显示
第一步: win+R,输入regedit,打开注册表.查找ShellIconOverlayIdentifiers,可以找到Tortoise相关的标签,这个时候会发现,这些标签都排在后面.需要在这些标签 ...
- python 12 模块与包
一.不知道什么原则 python文件下面只写方法,所有的可直接执行的代码,都放在条件下 原因.该文件有可能被其他文件调用 二.eval() 将字符串转为相应的数据格式可以想象json转为map 三.模 ...
- thymelead入门 git地址在文档最后
流程:##### 流程###### 1:pom添加依赖 <dependency> <groupId>org.springframework.boot</groupId&g ...