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请求的方式了,接下来,就可以实现我们的终极目标——接口测试了。
微信公众号搜索“自动化测试实战”或扫描下方二维码添加关注~~~

Robot Framework接口测试(3)--http请求之post的更多相关文章
- robot framework 接口测试 http协议post请求json格式
robot framework 接口测试 http协议post请求json格式 讲解一个基础版本.注意区分url地址和uri地址. rf和jmeter在添加服务器地址也就是ip地址的时候,只能url地 ...
- Robot Framework接口测试(2)--http请求之get
本来打算把http发送请求的get和post方法都介绍一下的,结果发现篇幅有点长,文本编辑也变得混乱,所以这里先介绍一下get方法,下一次再post.其实这些方法大家可以看一下源码里面的介绍只需要在代 ...
- Robot Framework接口测试(1)
RF是做接口测试的一个非常方便的工具,我们只需要写好发送报文的脚本,就可以灵活的对接口进行测试. 做接口测试我们需要做如下工作: 1.拼接发送的报文 2.发送请求的方法 3.对结果进行判断 我们先按步 ...
- Robot Framework接口测试(4)
现在我们已经做好了进行接口测试的必要准备:1.拼接发送的报文:2.发送报文的方法.现在我们实现RF上的接口测试. 我们先对发送的方法进行一下封装: 1.拼接报文方法: #coding : utf-8 ...
- robot framework接口测试之一-完整的测试用例
*** Settings *** Library Collections Library json Library requests Library RequestsLibrary Library H ...
- 基于RFS(robot framework selenium)框架模拟POST/GET请求执行自动化接口测试
打开RIDE添加测试用例 如: Settings Library Collections Library RequestsLibrary Test Cases ...
- 使用Robot Framework做接口测试
http://chuansong.me/n/1858477 1.RF框架 1.1 RF框架介绍Robot Framework 框架是一个通用的测试框架,一直是由诺西网络(Nokia Siemens N ...
- 【Robot Framework 项目实战 01】使用 RequestsLibrary 进行接口测试
写在前面 本文我们一起来学习如何使用Robot Framework 的RequestsLibrary库,涉及POST.GET接口测试,RF用例分层封装设计等内容. 接口 接口测试是我们最常见的测试类型 ...
- 【转】robot framework + python实现http接口自动化测试框架
前言 下周即将展开一个http接口测试的需求,刚刚完成的java类接口测试工作中,由于之前犯懒,没有提前搭建好自动化回归测试框架,以至于后期rd每修改一个bug,经常导致之前没有问题的case又产生了 ...
随机推荐
- vue切换路由模式{hash/history}
vue中常用的路由模式 hash(#):默认路由模式 histroy(/)切换路由模式 切换路由模式 export default new Router({ // 路由模式:hash(默认),hist ...
- Python 对象学习一
# 对象的基本理论 # 什么是对象? # 万物皆对象 # 对象是具体物体 # 拥有属性 # 拥有行为 # 把很多零散的东西,封装成为一个整体 # 举例:王二小 # 属性 # 姓名 # 年龄 # 身高 ...
- Kotlin 卸载APP自身
package com.example.batdw01.myapplication import android.net.wifi.WifiManager import android.support ...
- Docker入门使用
先来一波docker的指令: docker inspect 容器id 查询容器信息 docker stop 容器id 停止容器id docker rm 容器id ...
- LeetCode——Hamming Distance
LeetCode--Hamming Distance Question The Hamming distance between two integers is the number of posit ...
- 制作基于Buildbot的自动化测试系统Docker镜像
Buildbot in Docker 前言 最近使用Buildbot做了一个自动测试的框架,为了部署方便,可以把测试框架做成Docker镜像,方便部署.这里记录下过程,供大家参考. 项目介绍 项目是一 ...
- JavaWeb -- Struts2 ResultType细化, 国际化
1. ResultType细化 <result-types> <result-type name="chain" class="com.opensymp ...
- crm开发(基于ssh)(2)
今天内容 1 新增客户 2 客户列表 3 修改客户 4 删除客户 5 分页显示客户列表 Hibernate模板里面的方法 1 新增客户 配置 <mapping resource="cn ...
- Java 控制台应用程序部署 Linux
http://blog.csdn.net/brushli/article/details/12106339 注意:Windows 下编译的sh脚本,在linux上会存在编码问题,需在 linux 下编 ...
- Java连接DB2
package com.java.test.jdbc; import java.sql.Connection; import java.sql.DriverManager; import java.s ...