zoukankan      html  css  js  c++  java
  • 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'pythonu81eau52a8u5316u6d4bu8bd5u6570u636e001', u'RetCode': u'0', u'RetMsg': u'
    ac7940fe-0803-491c-86f3-4d64c6ea57c9'}
    0 提交成功
  • 相关阅读:
    轻松把你的项目升级到PWA
    聊聊React高阶组件(Higher-Order Components)
    java NIO系列教程2
    java NIO系列教程1
    个人笔记
    onclick时间加return和不加return的区别
    URL编码分析与乱码解决方案
    第九天 1-8 RHEL7软件包管理
    第八天 RHEL7.2 文件权限管理(第一部分)
    第七天 Linux用户管理、RHEL6.5及RHEL7.2 root密码破解、RHEL6.5安装vmware tools
  • 原文地址:https://www.cnblogs.com/nzyjlr/p/5584794.html
Copyright © 2011-2022 走看看