什么是Jmeter,生成测试报告

什么是JMeter

jmeter是100%的java语⾔开发的,它是免费开源的软件,是⾮常优秀的性能测试⼯具和接⼝测试⼯具,⽀持主流 协议的测试

结构

测试计划

测试计划是顶级的层级⽬录的结构,

 

 

 

 

那么在这样的⽬录结构中,⾥⾯可以包含很多线程组

 

线程组

线程组我们可以简单的理解为postman测试⼯具⾥⾯的collection,那么在整体线程组⾥⾯,可以添加很多的测试 ⽤例

简单控制器

理解为⼀个⽂件夹,主要是区分不同模块之间

 

测试⽤例

要素: 1、请求地址

 

 

 

 

 

 2、请求参数

 

 

 get请求⽅法 请求参数是query params的,那么它的形式是?key1=value1&key2=value2

 

 

 

post&put请求但是表单数据格式

 

 post&put请求⽅法但是是JSON数据格式&XML的数据格式

 

 

 

 

 post&put请求⽂件上传

 

 3、请求⽅法

 

 4、请求头

请求头是在配置元件⾥⾯的HTTP信息头管理器添加的 怎么添加 右键测试⽤例,然后在配置⽂件中选择HTTP信息头管理器,具体如下:

 

 顺序 ⼀般性的是在HTTP请求的前⾯ 具体加哪些? 互联⽹产品 User-agent Count-type cookie referer ⾃研公司 content-type ⾃定义 为了产品的安全体系考虑,后端会⾃定义部分请求头,那么也是必须加的

测试结果 查看结果树

请求地址&请求参数

 

 请求&响应

 

响应数据

 

 

不同数据格式的展示

 

 

 测试断⾔

⼀个测试⽤例必须得有断⾔,assert 其实了可以理解为实际结果与期望结果的对⽐

JSON断⾔

就是针对JSON的数据格式来进⾏的 Example1 {"name":"wuya"} name example2 [{"name":"wuya"}] [0].name

JSON Path Assertion 特别强调,⾃带的$.是默认的,不要管

Example1 {"name":"wuya"} $.name example2 [{"name":"wuya"}] $.[0].name

 

 

 

响应断⾔

默认的来验证响应⽂本数据,其实它可以来验证迷糊的匹配

 

 效率提升

HTTP请求默认值

 

 断言结果

 

 编码处理

响应数据编码

修改jmeter配置⽂件jmeter.properties,是在bin⽬录下 请求参数中⽂ 内容编码添加utf-8  重启

 

动态参数&关联

动态参数描述

解决⽅案

后置处理器中的JSON提取器和正则表达式提取器

 

 

 变量调⽤ ${变量}

插件安装

 

 

生成测试报告

ant构建工具,该构建工具执行的时候依赖于build.xml的文件,在build.xml文件里面会定义具体执行的脚本,执行的顺序,以及测试报告存储的目录。

自动发送邮件,需要三个jar,分别是:activation.jar,commons-email-1.2.jar,mail.jar,这三个文件放在ant的lib目录下

 

 

 

 jmeter生成html文件测试报告:

先在jmeter安装的路径下找到bin目录下的jmeter.properties,用记事本打开该文件

 

修改如下:

 

 

 

修改源文件

 

 

 

 

 

 

 

 

 jemter接口测试报告怎么整合到Jenkins:

 就是在上述步骤的基础上把控制台命令在Jenkins的面

 

 

 

 

 

 结果

 

 

 JMETER测试组件

 

断言:就是对脚本进行断言的

逻辑控制器:就是用来控制脚本运行逻辑的

前置处理器:就是在请求发送之前对请求进行处理

后置处理器:就是在请求之后对响应进行处理

定时器:设置思考时间的一些元件

配置元件:就是对请求做一些配置处理的元件,如:cookie管理、请求默认值等等

    HTTP请求默认值:就是将线程组下面请求的重复参数放到请求默认值中,后续所有请求就不需要重复实现该参数设置, 会默认从该元件中获取所有参数值(将大家一样的部分分离出来,

相当于page层)。

    HTTP Cookie管理器:jmeter不会自动关联cookie,需要添加cookie管理器来关联cookie。

非测试元件

    HTTP代理服务器:用来录制脚本,要打开浏览器的服务代理器,但是不太可靠。(脚本录制BlazeMeter谷歌插件)

1,自定义变量

 

 

 

 

 

 

定时器

 

正则表达式,

跟JSON提取器一样都是定义动态参数环境变量,定义访问权限

https://tool.oschina.net/regex     正则表达式在线测试

 

 

 参数化 1——多用户请求,多线程运行参数化

 

 

 

 

 

 

 

 

参数化2——csv文件

记事本

 

 

csv文件

 

 

posted @ 2022-01-16 16:35  阿建xj  阅读(105)  评论(0)    收藏  举报