zoukankan      html  css  js  c++  java
  • 接口测试流程

    接口测试:
     接口测试流程:
    1. 接口文档(API

    主要分为四个部分,请求方法,urlurl包括协议,ip地址(域名),路径和文件名),请求参数和返回参数和返回的状态码,请求的参数是否有有一些非必填的参数

    2. 接口用例(接口脚本和数据用例) 

        使用postmanjmeter填入接口请求,测试用例,以及断言,如果没有接口文档的话一般先和开发沟通,然后整理接口文档,再就是抓包查看请求参数,不懂的就和开发沟通

    接口数据用例一般包括title(标题)、body(入参)、ex(预期结果),主要是对入参进行等价类边界值等方法设计测试用例,填入不同预期结果,得到一个csv文件,再导入到jmeter中,将http请求中需要进行参数化的数值用${参数名}替代

    3. 接口测试执行 

    执行测试分为手工执行和使用ant批量执行

    为什么要ant?因为jmeter 不能批量运行脚本,使用ant可以批量运行脚本并且自动生成报告,其操作就是在dos命令中切换到jmeter的路径中,输入ant就可以了,而且还可以设置定时任务,在Windows任务管理器中设置一个定时任务,选择执行的时间,添加执行的脚本,前提是需要提前创建一个批处理文件,将使用ant批量运行脚本的dos命令输进去,将文件后缀名改为bat并保存

     4.结果查看和缺陷分析(先响应再请求)

     通过fiddler抓包查看请求报文和响应报文,对着接口文档,看请求报文有没有问题,没问题则说明正确,有问题的的话就是前端发的数据不对,没有将用户输入的数据正式转为请求

    请求报文没问题就看响应报文,如果返回报文正确但是在前端的页面不显示,那也属于前端解析响应不正确,再看返回的参数是否与接口文档中的一致,格式是否一致,返回的状态码是否与文档中状态码说明的问题一致

     

     

     接口文档: 
    1. restful接口规范(HTTP协议+JSON 

    Restful接口规范就是他的请求参数和响应结果都是json格式

    Json格式相当于字典的格式,键对值(keyvalue

    2. 接口文档有哪些内容

    接口请求的方法和url,(url包括协议,主机名,资源路径,请求数据)请求的参数名、参数数据以及消息体数据,返回的格式、返回的参数以及状态码和状态码说明 

     HTTP协议: 
    1. HTTP协议的组成 

    由请求报文和响应报文组成

    请求报文包含请求行,请求头和请求体

    请求行包含请求方法请求的urlhttp版本

    请求体就是用户输入的数据,如果是get请求就没有请求体

    响应报文包含响应行,响应行和响应体

    响应行主要包含http版本和状态码

    响应体主要包含errcodeerrmsg,查看这两个值是否错了

    2. HTTP协议和HTTPS协议 

    http是超文本传输协议,信息是明文传输,httpshttp的加密版,多了一层ssl协议,所以https协议更安全

    http协议进行数据传输要比https效率高

    httphttps使用的是完全不同的连接方式,http是无连接的,而且他们默认端口号也不一样,http80https443

     3.请求方法GETPOST的区别,除此还有哪些方法 

    Get是获取数据,post是修改数据

    Get把请求放在url后面,用?分割,参数与参数之间用&相连,post把请求放在body里面,所以get没有请求体,post有请求体

    Get在浏览器回退时是无害的,post会再次提交请求

    Get请求参数会完整的保存在浏览器中,参数暴露,post的参数在包体内,并不会保留,理论上,post相对get来说,更安全一些

    还有deleteput等等,delete是删除文件,put是传输文件,不怎么常用

    4.

     5.响应状态码有哪些

    2xx是请求成功,响应成功

    3xx是重定向

    4xx是请求错误,常见的有403404

    403是服务器已经理解请求,但是拒绝执行它

    404是请求失败,我们需要的资源没有在服务器发现

    5xx是服务器出了问题,站在测试的角度,如果出现5开头的状态码,直接报bug 

     6.CookieSessionToken的关系 

    Cookie是一种客户端机制,session是一种服务器机制

    Cookie的作用是为了保存用户的偏好信息,session的话是为了验证用户的身份

    他们存放的位置不同,cookie是存放在浏览器上,session是存放在服务器上

    安全程度不同,cookie相对来说不安全,session相对来说安全一些

    性能使用程度不同,session会一定时间的存放在服务器上,当访问增多,比较占用服务器的资源

    数据的大小不同,session是没有限制的,cookie的话一般不超过4k

    Token的话相当于一个令牌,当浏览器访问服务器时,需要验证身份

     抓包:Fiddler 
     1.Fiddler的界面,针对性的看一看 
     2.Fiddler抓包的原理,FiddlerAPP的包是怎么做的 

    Fiddler是位于客户端和服务器端之间的HTTP代理, 它能够记录客户端和服务器之间的所有 HTTP(S)请求,可以针对特定的HTTP(S)请求,分析网络传输的数据,还可以设置断点、修改请求的数据和服务器返回的数据

     3.Fiddler抓包过滤器怎么用,请求和响应的显示(raw 

    点击右边的过滤器,把所需要抓包的ip地址或者域名填写进去,也可以填写多个,用分号隔开,

     4.打断点-->篡改请求 适用于页面上的输入框的限制的测试

    在右下角输入bpu空格加上需要抓的包的关键字,点击回车,再操作进行抓包,将需要篡改的请求数据进行篡改,再点击放行,放行也是在右下角输入bpu点击回车就可以了,然后查看数据是否篡改成功

  • 相关阅读:
    ThinkPHP模版引擎之变量输出具体解释
    Heat-AutoScaling
    開始搭建第一个zookeeper
    OpenCV学习笔记(六十二)——《OpenCV Computer Version with Python》阅读摘要
    Oracle可插拔数据库的jdbc连接串写法
    MVVM设计模式基础知识--ICommand接口
    CodeForces
    一见钟情Sublime
    # 从零開始搭建Hadoop2.7.1的分布式集群
    C语言遍历文件和文件夹——————【Badboy】
  • 原文地址:https://www.cnblogs.com/ZQ730/p/14267947.html
Copyright © 2011-2022 走看看