Robot Framework接口测试(3)--http请求之post

http请求更多的是post请求,我们可以:

查看说明:

很多网站在登录的时候需要加上头部信息即headers,这个信息可以通过抓包工具获得——fiddler,一个轻量级的抓包工具,大神用了都说好~
这里模拟一下博客园的登录,先在前段模拟一下登录操作,后台开着fiddler抓取登录信息:

获取到这些信息以后,就可以在代码中写好headers信息,以及登录需要的信息了:

#coding: utf-8

import requests

def post_info():

     url = "https://passport.cnblogs.com/user/signin"
headers = {
     "User-Agent": 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36',
'Accept': 'application/json, text/javascript, */*; q=0.01',
'Accept-Encoding': 'gzip, deflate, sdch',
'Accept-Language': 'zh-CN,zh;q=0.8',
'Content-Type': 'application/json; charset=UTF-8',
'Content-Length': '385',
'X-Requested-With': 'XMLHttpRequest',
'Cookie': 'UM_distinctid=15ad2746631137-0753f3fbde32fd-591e3916-100200-15ad27466332a0; __gads=ID=b4b937f355218cb8:T=1494253102:S=ALNI_Ma7oKjSqjtXDLAlYH-yb4DlK0kouw; _ga=GA1.2.1665904319.1495250472; _gid=GA1.2.1373367502.1495252278; SERVERID=9b2e527de1fc6430919cfb3051ec3e6c|1495252557|1495250466',
'Connection': 'keep-alive'}
   payload = { #这是我的用户名和密码(已改成错误的)
     "input1": 'kCEho2Gs9jgtYnvxvo03tHsYygiyg/G618KdRuk=',
     'input2': 'nO1f0itXBsUem+vY4JlR7lkSeqN3OkTWmdSBI=',
     'remember': True}

   r = requests.post(url, json=payload, headers=headers, verify=False)
   return r.json()
   

调用该函数:

print post_info()

可以看到返回登录成功提示:

 

代码说明:

1.由于这里是https请求,直接发送请求会报错误:SSLError: [SSL: CERTIFICATE_VERIFY_FAILED]certificate verify failed,可以加个参数:verify=False,表示忽略对 SSL 证书的验证

2.最后结果是json格式,可以直接用r.json返回json数据:{u'success': True}

 

到这里,我们就知道post请求的方式了,接下来,就可以实现我们的终极目标——接口测试了。

 

微信公众号搜索“自动化测试实战”或扫描下方二维码添加关注~~~

posted @ 2017-10-14 17:51  孟船长  阅读(1761)  评论(0编辑  收藏  举报