python-接口测试(思路)
案例:接口发送post请求
步骤1:编写方法,用于提交post请求
步骤2:编写测试数据对象,用户提交测试数据
步骤3:调用方法和数据,进行测试
实例展示:
步骤1:编写方法checkapi_post()
#coding=utf-8 import urllib,urllib2
import json def checkapi_post(url,data):
#把参数进行编码
data=urllib.urlencode(data) #.Request来发送POST请求,指明请求目标是之前定义过的url,请求内容放在data里
url2=urllib2.Request(url,data) #.urlopen打开上一步返回的结果,得到请求后的响应内容
response=urllib2.urlopen(url2) #将响应内容用read()读取出来
apicontent=response.read() #将str对象转换成json对象
context=json.loads(apicontent) #读取json对象中的RetCode的值
retcode=context['RetCode'] print context
#跟进返回的状态进行判断
if retcode!='':
print(retcode+' '+u"提交失败")
else:
print(retcode+' '+u"提交成功")
步骤2:编写测试数据对象data,并将对象类型转换成字典类型
class data(object):
def __init__(self,User,UserPhone,Title,StockId,StockName,ModelId,UserGrade,IsFree,SelfStr):
self.User=User
self.UserPhone=UserPhone
self.Title=Title
self.StockId=StockId
self.StockName=StockName
self.ModelId=ModelId
self.UserGrade=UserGrade
self.IsFree=IsFree
self.SelfStr=SelfStr #对象类型转换成字典类型
def convert_data(obj):
dict={}
dict.update(obj.__dict__)
return dict
步骤3:调用方法和数据,进行测试
#coding=utf-8
import checkapi_post
import ComQuestion_data #请求地址
url="http://xxxx.xxxx.xx/xxx/xxxxxx/CommitQuestion" data1=ComQuestion_data.data('','139****1094','python自动化脚本001','','平安银行',2,1,2,'python自动化测试数据001')
data2=ComQuestion_data.data('','180****1650','自动化脚本002','','平安银行',2,1,2,'python自动化测试数据001')
data1=ComQuestion_data.convert_data(data1)
data2=ComQuestion_data.convert_data(data2) checkapi_post.checkapi_post(url, data1)
checkapi_post.checkapi_post(url, data2)
输出结果:
{u'Message': u'-1', u'RetCode': u'-1', u'RetMsg': None}
-1 提交失败
{u'Message': u'python\u81ea\u52a8\u5316\u6d4b\u8bd5\u6570\u636e001', u'RetCode': u'', u'RetMsg': u'
ac7940fe-0803-491c-86f3-4d64c6ea57c9'}
0 提交成功
python-接口测试(思路)的更多相关文章
- Python接口测试实战1(上)- 接口测试理论
如有任何学习问题,可以添加作者微信:lockingfree 课程目录 Python接口测试实战1(上)- 接口测试理论 Python接口测试实战1(下)- 接口测试工具的使用 Python接口测试实战 ...
- Python接口测试实战4(下) - 框架完善:用例基类,用例标签,重新运行上次失败用例
如有任何学习问题,可以添加作者微信:lockingfree 课程目录 Python接口测试实战1(上)- 接口测试理论 Python接口测试实战1(下)- 接口测试工具的使用 Python接口测试实战 ...
- Python接口测试实战5(上) - Git及Jenkins持续集成
如有任何学习问题,可以添加作者微信:lockingfree 课程目录 Python接口测试实战1(上)- 接口测试理论 Python接口测试实战1(下)- 接口测试工具的使用 Python接口测试实战 ...
- Python接口测试实战5(下) - RESTful、Web Service及Mock Server
如有任何学习问题,可以添加作者微信:lockingfree 课程目录 Python接口测试实战1(上)- 接口测试理论 Python接口测试实战1(下)- 接口测试工具的使用 Python接口测试实战 ...
- Python接口测试实战4(上) - 接口测试框架实战
如有任何学习问题,可以添加作者微信:lockingfree 课程目录 Python接口测试实战1(上)- 接口测试理论 Python接口测试实战1(下)- 接口测试工具的使用 Python接口测试实战 ...
- Python接口测试实战3(下)- unittest测试框架
如有任何学习问题,可以添加作者微信:lockingfree 课程目录 Python接口测试实战1(上)- 接口测试理论 Python接口测试实战1(下)- 接口测试工具的使用 Python接口测试实战 ...
- Python接口测试实战3(上)- Python操作数据库
如有任何学习问题,可以添加作者微信:lockingfree 课程目录 Python接口测试实战1(上)- 接口测试理论 Python接口测试实战1(下)- 接口测试工具的使用 Python接口测试实战 ...
- Python接口测试实战2 - 使用Python发送请求
如有任何学习问题,可以添加作者微信:lockingfree 课程目录 Python接口测试实战1(上)- 接口测试理论 Python接口测试实战1(下)- 接口测试工具的使用 Python接口测试实战 ...
- Python接口测试实战1(下)- 接口测试工具的使用
如有任何学习问题,可以添加作者微信:lockingfree 课程目录 Python接口测试实战1(上)- 接口测试理论 Python接口测试实战1(下)- 接口测试工具的使用 Python接口测试实战 ...
- python接口测试(post,get)-传参(data和json之间的区别)
python接口测试如何正确传参: POST 传data:data是python字典格式:传参data=json.dumps(data)是字符串类型传参 #!/usr/bin/env python3 ...
随机推荐
- Django学习---缓存
缓存 由于Django是动态网站,所有每次请求均会去数据进行相应的操作,当程序访问量大时,耗时必然会更加明显,最简单解决方式是使用:缓存. 缓存将一个某个views的返回值保存至内存或者memcach ...
- question?
- 03-22 Ajax验证用户登录
在网页中一般是通过表单提交数据,而表单获取信息,抛弃当前页面重新加载一个新页面. 现在,在webform网页中可以通过JueryAjax提交.处理数据的方式,达到异步刷新页面. 表单提交数据和Juer ...
- wwwroot文件无读取某个文件夹权限(对IIS_USER增加全部权限)
- TabControl关闭选项卡
关闭TabControl选项卡: Private Sub TabControl_Main_CloseButtonClick(sender As Object, e As EventArgs) Hand ...
- 【MongoDB】MongoDB 性能优化 - BI查询聚合
在BI服务中通过查询聚合语句分析定位慢查询/聚合分析,小结如下: 慢查询定位: 通过Profile分析慢查询 对于查询优化: 通过添加相应索引提升查询速度: 对于聚合大数据方案: 首先要说明的一个问题 ...
- Elasticsearch 搜索引擎
简介: Elasticsearch 是一个实时的分布式搜索和分析引擎.它可以帮助你用前所未有的速度去处理大规模数据.它可以用于全文搜索,结构化搜索以及分析. 分布式实时文件存储,并将每一个字段都 ...
- 1.Hadoop集群搭建之Linux主机环境准备
Hadoop集群搭建之Linux主机环境 创建虚拟机包含1个主节点master,2个从节点slave1,slave2 虚拟机网络连接模式为host-only(非虚拟机环境可跳过) 集群规划如下表: 主 ...
- c# winform 解决PictureBox 无法打印全部图片的问题
一. 问题描述 在页面使用PictureBox 加载资料图片后,点击“打印”,只能打印图片首页,较大图片则无法全部打印. 二. 原因分析 PictureBox中打印图片时没有设置继续打印相关属 ...
- 82. Remove Duplicates from Sorted List II (List)
Given a sorted linked list, delete all nodes that have duplicate numbers, leaving only distinct numb ...