Python接口测试-实战

使用python的requests模块:

1、print(r.content)、print(r.text)、print(r.json())、区别

解答:获取相应内容有这三种方法

content--返回的是bytes型,也就是二进制的数据。如果想取图片、文件,可以用该方法

text--返回的是Unicode型的数据,返回的内容为string,所以如果想取文本,可以用该方法

json是requests中内置的json解码器,返回的是json格式的数据,转化为了dic

2、测试需要登录的接口  or 需要使用到上个接口的token

解决方法:思路--用静态的Token 值,来测试需要登录的接口

                 ①要获取登录的TOKEN 值,可以用fiddler来获取,或者直接问开发(公司XX系统的token是单独存在一个表中)

                 注意:token一般存储的地方有2个,一是携带在cookie中,二是在respose(页面返回)的隐藏表单中

                 ②将 ToKEN 值 放在请求的参数的header 里

具体参见源文件:http://www.cnblogs.com/yoyoketang/p/7004457.html

#谁设置了token,然后去获取token??登录接口后获取新的token。怎么获取??
①公司系统登录后重新生成了token,该token在服务器返回的json里,可以直接提取
提取方式如下:
token = r.json()["data"]["userinfo"]["token"]

print(token)
②将token放在下一个需要传递token的接口header中,代码如下:

headers = {"token": "1716fbd983baebc745840874ad81dab7"}

3、page=1&page_size=20&companytype=&companyname=%E5%AE%89,其中参数companyname对应的汉字是“安”,是按什么原则转换的?

解决方法:既不是MD5,也不是ASCII码,属于URL编码,网上有专门的Url编码在线转换工具。

URL编码平时是用不到的,是一种浏览器用来打包表单输入的格式。浏览器从表单中获取所有的name和其中的值,将它们以name/value参数编码作为URL的一部门或者分离地发给服务器。


你可能感兴趣的:(python接口)