jmeter初级--基础知识(接口测试)

本次学习内容为jmeter的基础知识的学习,在了解jmeter基础知识的情况下,通过实例操作进行接口测试

一、jmeter的配置文件:

1、测试计划:

测试计划是jmeter测试脚本的根节点,关于整个测试脚本的一些基础设置,可以在测试计划中设定,例如用户定义变量。一个完整的测试计划,会包含一个或多个线程组、逻辑控制器、采样器、监听器、定时器、断言和配置元件。在界面的左侧树形列表上就是测试计划。点击测试计划,右边的界面上显示测试计划  的相关信息,可以填写测试计划名称、注释、添加用户定义的变量等信息。如图所示:

jmeter初级--基础知识(接口测试)_第1张图片

点击测试计划,点击鼠标右键,在添加模块中可以添加配置元件、监听器、定时器、前置处理器、后置处理器、断言等。

jmeter初级--基础知识(接口测试)_第2张图片

2、线程组:

线程组是任何测试计划的起点,所有的逻辑控制器和采样器都必须放在线程组之下。其他的测试元件(如监听器)可以被直接放在测试计划之下,这些测试元件对所有线程组都生效。线程组就像它的名字所描述的那样,被用来管理执行性能测试所需的JMeter线程。

线程组:在测试计划下可以添加一个或多个线程组。线程组之间是独立运行的,线程组定义了一个虚拟的用户池,其中每个虚拟用户都使用同样的测试脚本。在线程组页面上可以设置线程数量、设置线程启动周期、设置执行测试脚本的循环次数,可以进行并发和循环运行。

添加线程组步骤:点击测试计划--->右键-->添加-->Threads-->线程租,点击添加成功的线程组,右边显示线程组的相关信息。

(1)线程数:就是需要设置多少线程执行测试

(2)Ramp-Up Period(in seconds):用于告知jmeter要在多长时间内建立全部的线程,多长时间内需要把上面的线程数均匀启动完。默认值为0

(3)循坏次数:就是决定一个线程要跑多少次测试

(4)Delay Thread creation until needed:直到需要时延长线程的创建

(5)调度器:选中之后可以配置启动时间,立即或者预定的时间 

(6)持续时间:测试计划持续多长时间,会覆盖结束时间 

(7)启动延迟:测试计划延迟多长时间启动,会覆盖启动时间

jmeter初级--基础知识(接口测试)_第3张图片

在线程组中可以添加其他的组件,如图所示:

jmeter初级--基础知识(接口测试)_第4张图片

3、HTTP请求

通过在线程组先创建一个HTTP请求,jmeter可以发送一个HTTP/HTTPS请求到web服务器上。

在线程组上点击右键,在采样器上选择HTTP请求。添加成功后点击HTTP请求,右边界面显示HTTP的相关信息。在界面上填写服务器域名或IP,选择请求方法、路径;在参数区域可以以json串传参的post请求,也可以以key-value的方式传参数,如图所示:

jmeter初级--基础知识(接口测试)_第5张图片

4、HTTP信息头管理:

用户可以通过这个http信息头管理器添加或重载http请求头。

添加HTTP信息头步骤:右键-->添加-->配置元件-->HTTP信息头管理器。在信息头管理器页面上可以编辑名称、注释、以及添加信息头信息。

jmeter初级--基础知识(接口测试)_第6张图片

jmeter初级--基础知识(接口测试)_第7张图片

5、参数化

参数化可以让参数在执行测试过程中取不同的值,可以使用文件参数化和函数生成器参数化两种方式进行参数化。jmeter中的参数化方式有很多中,本次介绍CVS文件读取参数化、函数生成器参数化两种方式

(1)CVS文件读取参数化:CVS Date Set Config被用来从文件中读取数据行,并将它们拆分后存储到变量中,适合于处理众多参数变量但是参数的值不太大时使用。这一函数目前不支持多输入文件。

通过在本地新建文件,在文件中输入参数、参数值,保存在jmeter的bin目录下,如以下的登录账号参数化:

新建文本,输入用户名、密码:

jmeter初级--基础知识(接口测试)_第8张图片

保存在jmeter的bin目录下:

jmeter初级--基础知识(接口测试)_第9张图片

点击HTTP请求的右键添加CSV文件,如图:

jmeter初级--基础知识(接口测试)_第10张图片

在CSV文件中输入相应的信息,完成之后,在参数值中引用即可实现,如图所示:

jmeter初级--基础知识(接口测试)_第11张图片

(2)函数生成器:

_Random:会返回指定的最大值和最小值之间的随机数。

第一行输入参数的最小值,第二行输入参数的最大值,第三行输入变量名;点击生成后复制粘贴在需要参数化的参数值模块中。如图所示:

jmeter初级--基础知识(接口测试)_第12张图片

jmeter初级--基础知识(接口测试)_第13张图片

_RandomString:返回一个指定长度的随机字符串,使用chars to use中的字符。RandomString随机生成的是字符串,适合在用户名需要随机生成数字字母组合的字符串类型。如图所示:

jmeter初级--基础知识(接口测试)_第14张图片

jmeter初级--基础知识(接口测试)_第15张图片

6、后置处理器:后置处理器,顾名思义是在采样器发出请求之后做出的操作。后置处理器通常被用来处理服务器的相应数据,特别是服务器响应中提取数据。接口响应结果,通常为HTML、JSON格式的数据,对于HTML的响应结果,可以使用正则表达式获取响应结果。而对于JSON格式的数据,可以通过正则表达式、json path extractor插件、beanshell获取响应的结果。本次介绍json path extractor插件

jmeter初级--基础知识(接口测试)_第16张图片

jmeter初级--基础知识(接口测试)_第17张图片

7、用户定义的变量:

用户定义的变量可以定义初始化一系列变量,在测试计划下定义一个用户定义的变量,那么在测试计划下的所有线程组都可以使用被执行后的初始值。

jmeter初级--基础知识(接口测试)_第18张图片

jmeter初级--基础知识(接口测试)_第19张图片

8、断言

断言被用于对采样进行额外的检查,检查测试中得到的响应数据是否符合预期,它类似于loadrunner的检查点。本次学习中主要学习断言模块中的响应断言。

jmeter初级--基础知识(接口测试)_第20张图片

jmeter初级--基础知识(接口测试)_第21张图片

9、查看树、集合报告:

查看树和聚合报告是展示采样执行后的结果的测试元件。

查看树比较直观的记录每个请求的运行结果,查看结果树的运行结果模块,绿色标志表示运行通过,红色标志表示运行失败。测试人员可以一目了然的清楚哪些请求是运行失败、哪些请求是运行通过。在运行结果的右下方有3个模块,分别是取样器结果、请求、响应数据。

jmeter初级--基础知识(接口测试)_第22张图片


以上是jmeter的部分基础知识,下次更新将会结合实例进行深入讲解。















你可能感兴趣的:(jmeter学习)