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

一、什么是接口?

  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

    

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

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

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

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

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

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

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

  4)如何设置全局变量?

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

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

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

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

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

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

  6)添加test检查点

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

四、如何使用charles抓包?

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

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

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

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

原文地址:https://www.cnblogs.com/bugoobird/p/12695858.html