Apache JMeter"是AJpache组织开发的一款开源软件,是典型的纯Java开发的应用程序,可以在不同平台比如Windows、Linux或macOS系统上进行软件试。
JMeter主要用于应用程序的功能负载测试以度量软件的性能,也可以用于其他类型的测试比如接口测试,API测试等。
1.依赖java环境
2.支持多种操作系统
3.免费
Jmeter采样器
Jmeter工具提供了大量的功能,实现了对不同接口的数据抽取和校验。Jmeter取样器定义了测试相关数据样本的来源。在Http接口下,http采样器定义了用户操作发起的请求,向服务器发送请求以及接受服务器的相应数据
接口自动化测试关键四要素
1.接口文档分析
开发人员提供文档[没有文档则自行抓包分析]
2.创建独立接口测试脚本
接口测试:内容为具体的交互数据
能够发起对服务器的请求
3.选定断言方式
每一个接口,得出对于一个接口是否正常,有一个判断标准
4.分析接口上下文关联
接口是可以独立请求/调用
测试是要结合业务场景
例子:订单接口调用,携带token值。token值来自于登录接口调用之后
实操:
1.进入文件夹中
2.双击打开
3.修改语言
4.创建接口测试
5.添加测试片段
6.添加采样器(根据业务需求添加,例如登录接口可以添加http请求)
7.填写请求信息
8.添加线程组模块
9.保存通用的测试片段,例如登录等,实现样例的复用,免去重复的工作
10.测试片段一般需要填写的东西
11.测试片段定义测试逻辑和信息填写,线程组创建线程来执行响应的请求操作
12.查看结果树来观看测试结果
13.修改接口请求,需要填写token
14.自动化提高效率
自动化的核心思想:自动化测试替代手工测试,提高效率。不断优化流程不断替代手工操作
1.断言机制
使用jmeter实现自动化判断--取代人工对测试结果的判断
响应断言:基于http协议的一种判断,例如:http协议规定4**,5**都是异常情况。业务系统通常是对返回的内容进行判断:
2.接口上下文关联的处理方式
使用后置处理器,对请求得到的返回信息进行处理,例如登录返回的token信息进行自动化装配
JSON提取器:抽取接口返回的数据,解析之后,以参数变量的形式保存起来
3.多环境测试
DEV/Test/Pre?UAT 各种测试环境,不同环境如何实现脚本的复用
jmeter--用户变量--自定义参数
4.DDT数据驱动的概念及应用方式
DDT数据驱动测试(data driver test)是根据测试数据决定执行多少次及具体测试内容
多组数据测试,包含正向/反向,如何设计
jmeter读取CSV数据文件
jmeter循环控制器实现多组数据测试
5.全自动化生成HTML测试报告
jmeter -n 无界面 命令行模式运行
-n:无需可视化界面
-t:后面跟需要运行的脚本
-l:将测试的结果放到后面跟的文件中
-e:生成测试报告
-o:后面跟生成的位置