Python自动化学习笔记(1)认识接口测试以及postman、Charles工具简单应用

摘要:
接口有多种请求方式,最常见的为get和post请求。stu_name=13022&age=123,该请求通过浏览器使用get请求传入stu_name和age两个参数post请求多用于向服务端提交数据,不能直接通过浏览器访问,需要借助postman、jemeter等工具发出请求二、如何进行接口测试?1)需要开发提供一份接口文档,接口文档中会标注接口地址、接口入参和出参字段以及类型等信息2)选用接口测试工具:postman3)了解cookie和session区别cookie:cookie一般用于存储在客户端或者前端的一些键值对,包含用户的登录信息等。

一、什么是接口?

1)接口主要负责前端(包含客户端)与服务端进行数据通信的一种数据交互方式。最常见的接口协议是HTTP接口,接口会返回通用的数据类型(html/xml/json)。

接口有多种请求方式,最常见的为get和post请求。

2)get请求和post请求区别

get请求多用于从服务端获取数据,通常只需要通过浏览器直接访问,使用"?"来传入参数,使用“&”符号连接多个参数。

例如: http://ssss.com?stu_name=13022&age=123,该请求通过浏览器使用get请求传入stu_name和age两个参数

post请求多用于向服务端提交数据,不能直接通过浏览器访问,需要借助postman、jemeter等工具发出请求

二、如何进行接口测试?

1)需要开发提供一份接口文档,接口文档中会标注接口地址、接口入参和出参字段以及类型等信息

2)选用接口测试工具:postman

3)了解cookie和session区别

cookie:cookie一般用于存储在客户端或者前端的一些键值对,包含用户的登录信息等。

例如:用户在登录系统时,服务端登录接口会返回一个token给前端或客户端,前端或客户端将该token存入cookie,以便于下一步操作请求时,前端将cookie传递给服务端(和session比对)来判断该用户是否登录

session:session一般用于存储在服务端的一些键值对,包含用户的登录信息等

例如:用户在登录系统时,服务端登录接口会返回一个token给前端或客户端,服务端会将该token存在session中,以便于下一步操作请求时,前端将cookie传递给服务端(和session比对)来判断该用户是否登录

三、如何使用postman进行接口测试?

1)如何发送个get请求?

1、建立一个collection集合管理接口测试案例

2、点击myworkspace下方的“+”号,创建一个请求

3、选择请求方式为get,输入请求接口地址

4、下方选择Params,以key-vlaue形式输入入参,点击右侧save as 按钮,将请求保存在一个collection中,点击send

Python自动化学习笔记(1)认识接口测试以及postman、Charles工具简单应用第1张

2)如何发送一个post请求?

1、建立一个collection集合管理接口测试案例

2、点击myworkspace下方的“+”号,创建一个请求

3、选择请求方式为post,输入请求接口地址

4、下方选择Body,如果入参类型为key-value格式,则选择form-data;如果是json类型,则选择raw-json,填写入参后,点击send

Python自动化学习笔记(1)认识接口测试以及postman、Charles工具简单应用第2张

3)如何设置在headers设置cookie?

点击headers,输入key为"cookie",value输入“字段名”=“值”

4)如何设置全局变量?

点击页面右上角的小齿轮,点击Globals,即可添加全局变量

比如设置了全局变量 host = "baidu.com",在请求中只需要输入http://{{host}},使用{{变量名}}引用即可

5)如何设置多组入参对一个接口请求?----------引入参数化

1)桌面新建一个txt文档,内容第一行为需要参数化的字段明,如name,age,sex,第二行为具体对应值

Python自动化学习笔记(1)认识接口测试以及postman、Charles工具简单应用第3张

2)入参使用{{已参数化的变量}}来引用

Python自动化学习笔记(1)认识接口测试以及postman、Charles工具简单应用第4张

3)点击页面左上角的Runner按钮,选择需要跑的接口,选择Iteration 循环次数(一般为txt中的数据个数),选择上传txt文档,Data File Type为text/csv格式,勾选 save response,点击run

Python自动化学习笔记(1)认识接口测试以及postman、Charles工具简单应用第5张

6)添加test检查点

点击test,选择右侧的snippets,一般可选择get a avarible用来获取变量,response body:Json value check用来检查返回字段值是否相等,response body:contain string用来判断是否包含某个字符串

四、如何使用charles抓包?

1)本机抓包:直接打开charles即可抓包

2)客户端抓包:需要安装代理,https需要安装证书

3)拦截请求:右击需要抓的请求,选择BreakBreakpoints,下次再请求会自动拦截请求,可编辑请求入参和响应出参

4)其他常用用法可自行百度搜索即可。

免责声明:文章转载自《Python自动化学习笔记(1)认识接口测试以及postman、Charles工具简单应用》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇tinxml解析CDATA字段MySQL MySql连接数与线程池下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

appium从1.9升级到1.10踩的坑

在使用appium的时候,突然弹出窗口询问是否升级到1.10,一时手贱就点击了。升级完成后,用appium打开模拟器以及app是没问题的,但用python测试脚本调用,appium日志提示: [XCUITest] Simulator udid not provided, using desired caps to create a new simulato...

关于matlab的软件评测

在如今日益发展的信息膨胀社会,每天都会产生数以亿计的数据,而处理数据的软件就非常的重要了。 matlab也是一款处理数据的软件,同时,它也是一个方便数学研究者进行数学运算的实用工具。matlab具有自己的 函数库,其中包含了很多数学函数,例如积分函数,求值函数,还有概率论与统计的函数。对于处理起数据来,方便 使用。matlab还拥有自己的帮助书工具,在ma...

Mysql----mysql启动服务时提示"服务名无效"

1,首先说明一下我的环境,我刚开始是用的XAMPP这个集成的软件,里面安装了apache, mysql,tomcat这些软件,然后通过控制面板对其进行启动关闭的操作,这些操作很方便,但是我就用net start mysql,这时出现了“服务名无效” 问题原因:mysql服务没有安装。 解决办法: 在 mysql bin目录下 以管理员的权限 执行 mys...

笔记本光驱接口怎么外接台式机硬盘?

笔记本光驱位的硬盘托架已经很成熟了, 但是只能放2.5寸的硬盘, 就算用延长线连接出来, 也因为缺少12V供电, 不能驱动3.5寸硬盘. 这次改造就是添加额外的12V供电. 淘宝搜索    笔记本 SATA 7+6P公对母 光驱延长线  DC2.5*5.5电源母头 首先把延长线的母头供电部分锯掉丢弃, 只留下线缆部分, 剩下的数据7pin部分打磨好, 要...

关于系统用户数,并发用户数,在线用户数,吞吐量

1、  关于系统用户数,并发用户数和在线用户数 系统用户数 侠义上来说,可以理解为系统注册用户数;广义上来说,可以理解为所有访问过系统的用户数 在线用户数 侠义上来说,可以理解为已登录系统的用户数;广义来说,可以理解为当前时间访问系统的用户数。 并发用户数 可以分两种: 1)同一时间点,执行同一(业务)操作的用户数 2)同一时间点,执行不同(业务)操作的...

vue项目微信端清理缓存问题解决

vue为单页面前端框架,清理缓存,常规的方式是添加html头部meta,如果逻辑里面是需要使用缓存的,这种方式不建议使用,代码片段如下: <html manifest="IGNORE.manifest"> <head> <meta charset="utf-8"> <meta name="vie...