zoukankan      html  css  js  c++  java
  • python接口测试(一)——http请求及token获取

    使用python对当前的接口进行简单的测试

    1.接口测试是针对软件对外提供服务得接口得输入输出进行得测试,验证接口功能与接口描述文档得一致性

     返回结果可以为字符串,json,xml等

    2.接口的请求方式:get,post,delete,put等

    3.接口测试需要的元素:url,请求方式,参数(key:value)

      比如“登录”:

    #!/usr/bin/env python
    #coding:utf-8
    import requests,json
    url="http://xxx.xxx.com/xxx/login"
    headers={'Content-Type':'application/json;charset=UTF-8'}
    request_param={
        "phone":"18200000000",
        "password":"111111"
    }
    response=requests.post(url,data=json.dumps(request_param), headers=headers)
    print response.text

      注:

      1.get请求:参数是url,params,字典;把params的参数成为url的参数,也就是url中传递参数;

      2.post请求:参数是url,data, json以及字典,data其实就是以表单形式的数据,或者是把一个字典给data作为参数来传递;

      3.post请求有时需要把参数进行反序列化,即json.dumps(),将dict格式转化为str格式;

      最后响应结果:

      

      事实上,如上图的post请求中,登录成功后会返回一个token,然后后面的每个请求均会带这个参数token去请求,即登录获取token,把获取的token带上去请求或者操作其他业务;

      实现的思路:

      把登录写成一个方法,然后把token返回,再做下一个请求的时候,把token当作参数来传递

        

      另外一个请求需要引用时,可以直接将获取的token放在header里

      headers={'Content-Type':'application/json;charset=UTF-8',

                  "token":login.login() }

      登录成功后,返回了token,然后在执行其他接口的时候,直接把返回的token当作是参数来处理,但是有一点是必须先登录,再执行登录后的接口,要不会提示错误

      请求时我们可以获取不同的响应内容:

      response.text    获取响应内容,返回的时unicode数据

      response.status_code  获取的是状态码

      response.content   获取响应内容时bytes数据

  • 相关阅读:
    Linux环境下安装jdk1.8(CentOS7)
    MySQL创建外键报错ERROR 3780 (HY000): Referencing column ‘user_id’ and referenced column ‘id’ in foreign key constraint ‘fk_user_id’ are incompatible.
    scrapy框架的使用
    开源《热血传奇》服务端引擎(C#编写),可以顺利进行游戏(更新编译和部署教程)
    记录一下今天刚开通的博客
    Sql Server 2005中还原整个数据库重命名问题
    第一次学开车
    转载:c#与ASP.NET中DateTime.Now函数详解
    winform进度条收藏
    今天新注册的,庆祝一下
  • 原文地址:https://www.cnblogs.com/zy-tester/p/9646626.html
Copyright © 2011-2022 走看看