基于jmeter进行api单个接口测试
来废话不多说了,我也不想说些简单的怎么使用jmeter的,有不会的可以绕过,我今天就讲解一下怎么用jmeter进行api接口测试~~~~~~~~~~~
first 看一下怎么去填写各个参数
还可以换个姿势
还不喜欢继续换个姿势填写数据
image.png
数据在哪里呢?请看下一个图
image.png
顺带解释几个名词
1.Filename:参数文件名,可以写绝对路径,个人强烈建议采用相对路径,避免脚本迁移时需要修改路径。 2.File encoding:参数文件的编码格式。推荐选择 UTF-8。
Variable Names:对对应参数文件每列的变量名。类似于 Excel 文件的文件头,起到标示的作用,同时也是后续引用的标识符,建议采用有意义的英文标示。
Delimiter:参数文件分隔符。与参数文件中的分隔符保持一致即可。
3.Allow quoted data?:是否允许引用数据。默认设置为 false。
例如数据样式为:"10100598536","29357","1","1993575","477948510289","android","45" 时,此处需设置为 true,一般默认为 false 即可。
4.Recycle on EOF?:是否循环读取参数文件内容。默认设置为 true。
设置为 true 时,当已经读取完参数文件内的测试用例数据,还需要继续获取用例数据时,此时会循环读取参数文件数据;
设置为 false 时,若已至文件末尾,则不再继续读取测试数据。通常在 线程组的线程数 * 线程组的循环次数 > 参数文件行数时,才需要将此项设置为 true。
5.Sotp thread on EOF?:当读取到参数文件末尾时,是否停止读取线程。默认为 false。
当 Recycle on EOF? 设置为 true 时,此项不起任何作用。当且仅当 Recycle on EOF? 为 false 时,此项配置才生效。
若为 true,则在读取到参数文件行末尾时,终止参数文件读取线程。例如:线程组的线程数 * 线程组的循环次数 = 10,参数文件行数 = 7,那么将在第 8 次开始停止线程。
若为 false,此时线程会继续读取,但是会请求错误,因此时读取的数据为 EOF。以上同例,自第 8 次开始,线程的请求数据为 EOF。
6.Sharing mode:共享模式,即参数文件变量作用域。主要有以下几种方式:
All threads:当前测试计划中的所有线程组中的所有的线程均有效。默认。
Current thread group:当前的线程组中的线程有效。
Current thread:当前线程有效。
编辑(一般不会用到)
那我的数据应该是什么样子的呢?????
1.第一行是字段名可以放在csv文件的第一行,也可以放在csv data set config文件的Variable names(comm-delimited)中逗号隔开
2.第二行就是数据了,对应字段放上各自的值
备注:在保存csv文件的时候一定要保存好,不然也容易读取错误。
second 怎么去设置请求头
image.png
好了,现在万事具备,只欠东风了!!!
录制好你的数据,然后点击运行按钮,云硬按钮在哪里?看过来
image.png
third 查看结果
1.查看请求,响应的结果
2.用表格查看
image.png
3.查看聚合报告
image.png
4.还可以增加断言
后续可以自己研究。。。。
*********到此基本就可以做完单个接口的测试了**************
1.跑多条用例,如果是同一个接口可以都放在csv文件中,然后线程组中设置,如下图
2.如果需要一个线程调用多次,也可以用一些jmeter的逻辑控制器,如下图:
image.png
根据自己的业务逻辑来设计
3.还可以设置一些定时器和前置/后置处理器等
over 基本进行简单的接口测试这些就足够了,如果还需更多,请看下次分享!!!!