您的位置:首页 > 编程语言 > Python开发

python-接口测试(思路)

2016-06-14 17:30 441 查看
案例:接口发送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!='0':
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('30010384200','139****1094','python自动化脚本001','000001','平安银行',2,1,2,'python自动化测试数据001')
data2=ComQuestion_data.data('300034228661','180****1650','自动化脚本002','000001','平安银行',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'0', u'RetMsg': u'
ac7940fe-0803-491c-86f3-4d64c6ea57c9'}
0 提交成功
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: