zoukankan      html  css  js  c++  java
  • 多测师讲解requests __上_高级讲师肖sir

    1、三种接口接口请求方式

    # # 在python当中接口的请求方式有哪些:
    # import requests # 导入requests接口库
    # # # # 请求方式有三种:
    # # # # 第一种:
    # rep =requests.get()
    # rep =requests.post()
    # # 第二种
    # rep =requests.request(post,get)
    # # 第三种
    # session =requests.Session()
    # #创建一个session对象,作用就是保持会话和关联
    # rep =session.get()
    # rep =session.post()


    2、组建一个接口的步骤有哪些?

    # 组建一个接口的步骤有哪些?
    # 1、URL请求地址
    # 2、headers 请求头类型
    # 3、接口入参
    # 4、请求的方法get post

    (一)第一种请求方法:

    案例1:构建一个post请求

    案例2:组建一个get请求

     import requests

    # 构建一个get请求:
    url='http://129.226.122.199:8080//cms/manage/loginJump.do'
    data={'userAccount':'admin','loginPwd':123456}
    # get请求可以不要类型
    # 在工具中post请求的时候会有一个类型选择
    rep =requests.get(url=url,params=data)
    print(rep) #<Response [200]>
    print(rep.text) #{"code":"200","msg":"登录成功!","model":{}}
    js=rep.json()#转换成为js格式,然后在通过断言方法来实现断言
    print(rep.headers) #请求头
    print(rep.cookies)#cookie
    print(rep.status_code)# 200返回状态

    (二)通过第二种请求方式来构建请求

    import requests
    url ='http://129.226.122.199:8080/cms/manage/loginJump.do'
    data ={'userAccount': 'admin',
    'loginPwd': 123456}
    rep =requests.request(method='get',url=url,params=data)
    print (rep) #Response [200]>
    print (rep.text) #{"code":"200","msg":"登录成功!","model":{}}

     案例3

    将登录接口封装在类中且给登录接口实现断言请求方式:post

    # #   将登录接口封装在类中且给登录接口实现断言请求方式:post
    import requests
    class Cms_api: #定义一个类
    def __init__(self): #定义一个构造函数用来初始化
    pass
    def fun(self): #定义一个方法
    '''封装登录接口'''
    url ='http://129.226.122.199:8080/cms/manage/loginJump.do'
    data={'userAccount': 'admin','loginPwd': 123456}
    headers ={'Content-Type': 'application/x-www-form-urlencoded'}
    rep =requests.post(url=url,data=data,json=headers)
    print (rep.text)
    '''如需要断言则要把类型转换成为字典:js'''
    js =rep.json() #切记如需要断言一定要转换否者无法断言
    assert js["msg"] ==u"登录成功!"
    if js["msg"] ==u"登录成功!":
    print ('接口用例正常')
    else:
    print ('接口用例异常')
    if __name__ == '__main__':
    c =Cms_api()
    c.fun()


    案例3

    #第三种方法
    # # 练习题目:
    # # 将登录接口,用户管理接口,新增用户接口封装在类中且实现断言,
    # # 请求方式:post
    import requests #到入 接口库
    session= requests.Session() # 创建一session对象来保持上下接口的关联
    class Cms_api:
    def __init__(self):
    pass
    def cms_dl(self): #定义一个登录
    url ='http://129.226.122.199:8080/cms/manage/loginJump.do'
    data={'userAccount': 'admin','loginPwd': 123456}
    headers ={'Content-Type': 'application/x-www-form-urlencoded'}
    # dl_rep=requests.post(url=url,data=data,json=headers)
    dl_rep =session.post(url=url,data=data,json=headers)
    print (dl_rep.text)#{"code":"200","msg":"登录成功!","model":{}}
    js =dl_rep.json()
    assert js["msg"]==u"登录成功!"
    def cms_yhgl(self): #定义一个用户管理接口
    uerlist_url='http://129.226.122.199:8080/cms/manage/queryUserList.do'
    uerlist_data={'startCreateDate': '','endCreateDate': '','searchValue': '', 'page': 1}
    uerlist_headers={'Content-Type': 'application/x-www-form-urlencoded'}
    # uerlist_rep=requests.post(url=uerlist_url,data=uerlist_data,json=uerlist_headers)
    uerlist_rep=session.post(url=uerlist_url,data=uerlist_data,json=uerlist_headers)
    print (uerlist_rep.text) #{"code":"200","msg":"登录成功!","model":{}}
    js =uerlist_rep.json() #"code":"200","msg":"查询用户成功!",
    if js["msg"]==u"查询用户成功!":
    print ('查询接口正常')
    else:
    print ('查询接口失败')
    def cms_uers(self): #薪增用户接口
    user_url='http://192.168.254.129:8080/cms/manage/saveSysUser.do'
    user_data={'id':'' ,'userName': 'cccc','userSex': 1,'userMobile': 13314333333,'userEmail': '8834343@qq.com','userAccount': 'cccc', 'loginPwd': 123456,
    'confirmPwd': 123456}
    user_headers={'Content-Type': 'application/x-www-form-urlencoded'}
    # user_rep=requests.post(url=user_url,data=user_data,json=user_headers)
    user_rep=session.post(url=user_url,data=user_data,json=user_headers)
    print (user_rep.text) #{"code":"400","msg":"保存用户信息失败,登录帐号已存在!","model":{}}
    js =user_rep.json()
    assert js["msg"]==u"保存用户信息失败,登录帐号已存在!"
    if __name__ == '__main__':
    U=Cms_api() # 创建一个对象
    U.cms_dl() #对象调用登录接口
    U.cms_yhgl() #对象调用用户管理接口
    U.cms_uers() #对象调用新增用户接口
    #
     
  • 相关阅读:
    符号表
    经典算法-堆排序
    AngularJs基础
    Echars详解
    经典算法-快速排序
    经典算法-递归
    异常分类,异常抛出位置
    js的数据类型具体分析
    函数
    数据
  • 原文地址:https://www.cnblogs.com/xiaolehua/p/13803695.html
Copyright © 2011-2022 走看看