Python-接口自动化(六)
接口基础知识(六)
(七)接口
1、接口:外部系统与本系统之间以及系统内部的各个子系统间,以约定标准提供的服务,包括对外提供的接口/对外提供的接口。
不同的请求协议:http webservice dubbo socket
http请求分为:get post delete put head option
GET和POST的区别:
GET:提交的参数会拼接到URL里面去,不是一种很安全的提交数据方式,传递的数据量比较小;
POST:数据和URL不会拼接到URL里面,post用额外的数据格式去传递,比如json/xml,传递的数据量比较大。
接口测试的本质就是测试类里面的函数。
2、http request
一个http请求是指从客户端到服务端的请求信息,包括以下内容:
请求地址:url
请求方法:HEAD GET POST PUT OPTINONS DELETE PATCH
http协议/版本:可以打开浏览器按f12自行查看
请求头:http客户程序(例如浏览器)向服务器发送请求的时候必须指明请求类型(一般是GET或者POST),如果有必要,客户程序还可以选择发送其他的请求头
请求正文:也就是我们所说的请求参数
注:请求头里面的参数不一定是每次请求都必须要带的。
3、http response
包含了以下几个:
状态码:标记响应状态的一个标识
响应头
响应正文:针对请求从服务响应回来的数据,比如html、xml、json等
常见的状态码:
200(正常):表示一切正常,到了服务器并且服务器正常的响应了你的请求;
302(临时重定向):指出被请求的文档已被临时移动到别处,此文档的新URL在Location响应头中给出;
304(未修改):表示客户机缓存的版本是最新的,客户机应该继续使用它,比如说前端js、css、jpg等等;
403(禁止):服务器理解客户端请求,但拒绝处理它。通常由于服务器上文件或者目录的权限设置所致;
404(找不到):服务器上不存在客户机所请求的资源;
500(内部服务器错误):服务器端的CGI、ASP、JSP等程序发生错误
504:超时
4、cookie&session
cookie:在客户端存储用户的一些数据,比如说用户名啊浏览记录这些
session:在服务器端记录用户的请求状态,一般默认时间是30分钟
会员卡机制:session_id会存在cookie中,每次请求cookie中的所有信息都会传送给服务器,服务器通过session_id来识别是否是同一个用户的请求,如果不是同一个用户的话,就会要求用户重新登录。
注:存在这种机制的原因:因为http请求是无状态的。
5、token&key
鉴权(token):访问的接口是否正常,是否非法访问,绕过前端访问;
授权(key):是否具有访问的接口的权限,一般来说是唯一的,全局的,动态的,具备一定特征。
以上,第六部分到此结束~
Python-接口自动化(六)的更多相关文章
- python接口自动化六(参数化也就是把之前敲过的代码封装成方法)
前言 前面一篇实现了参数的关联,那种只是记流水账的完成功能,不便于维护,也没什么可读性,接下来这篇可以把每一个动作写成一个函数,这样更方便了. 参数化的思维只需记住一点:不要写死 (由于博客园登录机制 ...
- python接口自动化11-post传data参数案例
前言: 前面登录博客园的是传json参数,有些登录不是传json的,如jenkins的登录,本篇以jenkins登录为案例,传data参数. 一.登录jenkins抓包 1.登录jenkins,输入账 ...
- python接口自动化(响应对象方法)
python接口自动化(响应对象方法) 一.encoding作用 获取请求的编码(在不设置响应编码时,响应的信息默认使用的是请求的编码格式):r.encoding 设置响应的编码:r.encoding ...
- python接口自动化(get请求)
python接口自动化(get请求) get请求的目的:查询资源 一.导包 二.请求的URL 三.请求的参数 四.获取请求的URL 五.获取响应的状态码 六.获取响应的本文信息 #导包 import ...
- Python接口自动化——soap协议传参的类型是ns0类型的要创建工厂方法纪要
1:在Python接口自动化中,对于soap协议的xml的请求我们可以使用Suds Client来实现,其soap协议传参的类型基本上是有2种: 第一种是传参,不需要再创建啥, 第二种就是ns0类型的 ...
- python接口自动化(十)--post请求四种传送正文方式(详解)
简介 post请求我在python接口自动化(八)--发送post请求的接口(详解)已经讲过一部分了,主要是发送一些较长的数据,还有就是数据比较安全等.我们要知道post请求四种传送正文方式首先需要先 ...
- python接口自动化-Cookie_绕过验证码登录
前言 有些登录的接口会有验证码,例如:短信验证码,图形验证码等,这种登录的验证码参数可以从后台获取(或者最直接的可查数据库) 获取不到也没关系,可以通过添加Cookie的方式绕过验证码 前面在“pyt ...
- python接口自动化28-requests-html爬虫框架
前言 requests库的好,只有用过的人才知道,最近这个库的作者又出了一个好用的爬虫框架requests-html.之前解析html页面用过了lxml和bs4, requests-html集成了一些 ...
- python接口自动化-参数化
原文地址https://www.cnblogs.com/yoyoketang/p/6891710.html python接口自动化 -参数关联(一)https://www.cnblogs.com/11 ...
- python接口自动化 -参数关联(一)
原文地址https://www.cnblogs.com/yoyoketang/p/6886610.html 原文地址https://www.cnblogs.com/yoyoketang/ 原文地址ht ...
随机推荐
- Centos 7 安装 ELK 5.6.8 及基础的配置
下载 wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.6.8.rpm wget https://ar ...
- github收藏夹
技术面试必备基础知识 https://github.com/CyC2018/CS-Notes 程序员简历模板列表 https://github.com/geekcompany/ResumeSample ...
- 单元测试系列之十一:Jmockit之mock特性详解
本文是Jmockit学习过程中,根据官网所列的工具特性进行解读. 1.调用次数约束(Invocation count constraints) 可以通过调用计数约束来指定预期和/或允许匹配给定期望的调 ...
- UVA11020 Efficient Solutions
思路 先判断一个点能不能插入,能插入的话删除所有因为它而没有优势的点 注意 写 S.erase(it); it++; 会RE 要写 S.erase(it++); 代码 #include <cst ...
- ActiveReports报表控件 V13 正式发布,提供在线报表设计和自适应报表布局
重磅消息, ActiveReports V13 正式发布!本次更新 ActiveReports 将给您带来全新的报表设计体验:提供在线报表设计器.提供响应式布局和屏幕尺寸自适应能力.提供全新的图表…… ...
- P1582 倒水
传送门 思路: 类似于 袁绍的刁难 , 一道二进制的模拟题. 先将:将原先的瓶子数 n 转换成二进制,二进制中 1 的个数就是合并后剩下的瓶子个数 . 主要利用树状数组的 lowbit 函数: inl ...
- legend2---项目总结(legend2的意义)
legend2---项目总结(legend2的意义) 一.总结 一句话总结:总体来说还是化腐朽为神奇的,之前投了很多精力在学习上面,学的内容非常多,但是都记不住,尤其是英语,感悟也是没办法继续深悟,这 ...
- 转载&修改:赶集mysql军规
个人认为以下军规主要为了适应海量数据场景,对于业务复杂性系统并一定完全按照此军规 一,核心军规 不在数据库做计算,cpu计算务必移至业务层 控制单表数据量,单表记录控制在千万级 控制列数量,字段数 ...
- maven install报错 Failed to execute goal on project my-manager-mapper: Could not resolve dependencies for project com.my:my-manager-mapper:jar:0.0.1-SNAPSHOT:
报错信息为: [ERROR] Failed to execute goal on project my-manager-mapper: Could not resolve dependencies f ...
- 关于vue中this.attr代替this.data.attr访问的原理
请看如下例子: var obj = { name:"zhuwei", age:18 } function Person(data){ this.data = data; } var ...