接口测试
(1)环境的搭建:
根据项目所用到的编成语言,下载程序包,例如Python项目,需要python3.6版本的工具,同时设置python和pip环境变量,其中启动cmd安装依赖模块:pip install -r requirements.txt -i https://pypi.douban.com/simple
注:pip是安装下载工具,requirements.txt是依赖模块的信息和版本集合文本
验证系统是否安装成功:运行程序执行文件,在浏览器中输入程序的入口URL信息,若显示相关信息则表示环境搭建成功
(2)接口测试工具:
Jmeter,基于java开发,是apache公司开发的
①运行Jmeter的环境需要:JDK、JRE、JVM
②Jmeter的作用:
a、接口测试
b、性能测试(压力测试)
c、web自动化测试
d、数据库测试
e、JAVA程序测试
③优点:开源免费成本低、支持多种协议http、ftp、数据库协议、小巧容易下载安装、功能强大比postman
④缺点:不支持ip欺骗,LoadRunner可以做到ip欺骗,使用Jmeter无法验证JS程序,也无法验证页面UI,所以需要和selenium配合完成Web2.0应用的测试,学习成本和维护成本较高
⑤安装Jmeter 官网:https://jmeter.apache.org/,其中最新版本需要java8以上的环境
⑥执行:apacheJmeter.jar和Jmeter.bat两个文件都可以运行jmeter
⑦创建jmeter脚本:新建测试计划-----添加----线程组----线程组添加----取样器----http请求----||测试计划中—添加—监听器—查看结果树
运行之后可以查看请求和响应数据
⑧系统数据传递:UI层—web接口请求—业务逻辑层----内部接口请求----数据库—内部接口响应—业务逻辑处理—web接口响应—客户UI界面 (接口测试是Jmeter工具是不展示前端UI界面下根据接口文档进行的测试,数据库有sqlitestudio)
(3)接口数据库测试:
查询接口:GET
带参数和不带参数,其中带参数的有两种方式处理:
第一种:直接在URL中带入参数?参数名=参数值&参数名=参数值
第二种:请求取样器的下方填写参数名和参数值,线程组下的前置处理器中的用户参数,在测试计划中可以添加附加参数如:Content-Type:application/json 表示添加或修改数据的格式是json
新增接口:POST
需要根据接口文档添加相关的消息体数据(json格式),同时需要添加附加参数Content-Type:application/json
新增成功的响应状态码是 :201 ,响应数据为新增的数据加数量和是否存在的消息
更新接口:PUT
需要按照接口文档的要求写,同时在消息体数据中要写明修改之后的内容
修改成功的状态码:200 ,
删除接口:DELLETE
需要按照接口文档的要求写明路径
删除成功的状态码是:204
(4)Jmeter基本组件:
测试计划
线程组
取样器:http请求、JDBC请求
逻辑控制器:if控制器、循环控制器(次数不可变参数)、Forech控制器(循环可变参数)
前置处理器‘:用户参数(为了实现变量的调用)
后置处理器:正则表达式提取器(提取Http响应结果的数据,模糊提取)、调试后置处理程序
断言:响应断言、json断言、大小断言
定时器
配置元件:CSV数据文件设置(导入CSV文件信息严格的格式要求)、http请求头管理器(如Content-Type之类的)、http请求默认值(http请求中的方法url参数端口等)
监听器’:查看结果树(查看线程组中的请求的执行情况、聚合报告)
其中对于以上的功能的详细说明见下一篇。--------