测试接口时,当请求参数不是固定的,每次请求对应的参数都是不同的,就需要对请求参数进行参数化。我们这里简单介绍一下5个用户与一个用户建立好友关系。
一、测试需求描述
1、 本次测试的接口为http服务端接口
2、 接口:扫码调用建立关系
3、接口描述:多用户与一个用户建立好友关系
地址:http://192.168.8.197/act/api/v1/public/relFriend
请求方式: post
请求头参数: token(
56063b79e9be42bb9ed16a055fde04ab,
e0599e7cf2694cb5bf593559d15f62f2,
7f99e665f6b949eabe1356c076fe0275,
0ea8d1fb4d7244f1b68aa582c6f5765c,
7cca8b0a13404a21ad342040c30e77f8
)
请求参数: ctID:ctyl53
响应数据:{"code":"OK","message":null,"stack":null,"body":{"message":"添加好友成功","userId":""}}
二、使用Jmeter部署环境
1、首先打开Jmeter,在测试计划下添加线程组。
2.在线程组下添加HTTP信息头管理器。
3.在线程组下添加HTTP请求。
4.在HTTP请求下添加察看结果数
5.在HTTP请求下添加聚合报告
三,部署完成后,开始填入数据进行测试
1:首先我们需要把请求头参数token参数化,这里简单介绍两个方法:方法一:
1、这里添加CSV Data Set Config来设置。
2、以下是CSV Data Set Config各个参数的简要说明:
- FileName:csv文件的名称及路径
- File Encoding: 文件编码----默认为空
- Varible Names: 定义文本文件中的参数名,定义后可当变量的方式来引用
- Ignore first line(only used if variable name is not empty):忽略第一行(仅使用变量名不是空的)----默认为false
- Delimiter:分隔符---每个参数之间的分隔符号,一般默认使用逗号,
- Allow Quoated data: 允许数据引---
- Recycle on EOF: 文件结束循环----设置为True后,允许循环取值
- Stop Thread on EOF: 文件结束后停止线程------默认为false,如果设置为True则会影响文件结束循环
- Sharing Mode: 设置线程是否共享---默认设置为All threads
3、我们这里把请求头参数token保存在E盘的11.txt,变量名定义为t,各参数之间用,隔开,此参数分享给所有的线程
4.现在可以来填写HTTP信息头管理器,点击添加,把请求头参数:token =${t},这样就把参数引进来了。
方法二:利用函数来设置,点击选项-->函数助手对话框
1、在函数助手对话框,选择_CSVRead函数,把文件路径放在第一行,文件中对应的第几列放在第2行,点击生成,就会自动生成一个函数字符串,拷贝到HTTP信息头管理器的参数token对应的参数。
四,开始填入HTTP请求数据进行测试
1、填写HTTP请求,点击添加,把请求参数: ctID:ctyl53填入进去。
协议:http
请求方式: post
路径:/act/api/v1/public/relFriend
2、设置线程组,根据测试需求来设置。我们这里设置的是5个虚拟用户,循环1次。
3、全部都设置好了就可以点击绿色箭头运行了,或者点击“运行”菜单栏的“启动”列表。运行完成后,我们来看看查看结果数。点击响应数据查看返回数据是否和研发部编写的一致。
4,我们再来检查一下请求的参数是否正确。可以看到每个HTTP对应token参数是一一对应11.txt
5.、请求都成功后,我们来看看聚合报告,这个数据就是我们的测试结果了。