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!='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 提交成功

 

posted @ 2016-06-14 17:30  职场人的思考  阅读(1857)  评论(2编辑  收藏  举报