`
lixf5409
  • 浏览: 4447 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JMeter性能测试工具阶段总结

阅读更多

JMeter性能测试工具阶段总结

1.系统功能:

1.登录



 
<!--[endif]-->

2.登录后,功能界面。

登录后,进入该界面,可在该界面中进行启动简单流程和进入待办任务列表等操作。



 
<!--[endif]-->

3.待办任务界面。

在上一界面,点击【待办任务】按钮,进入待办任务界面。



 
<!--[endif]-->

4.工作项推送

单击待办任务界面的工作项ID,进入任务明细界面,通过【推送】按钮进行工作项推送操作。



 
<!--[endif]-->

2.性能测试用例

测试系统中的【启动简单流程】和【推送】功能。

因为是为了测试后台性能,所以前台界面做的尽量简单,减少不必要的逻辑和性能消耗。

3.启动流程依赖登录用户

启动流程请求需要依赖系统登录的用户Id,系统登录后将用户Id放到了session中,启动流程之前需要从session中先获取当前登录用户。

启动流程获取userId代码示例:

HttpSession session = request.getSession();

String userId = (String) session.getAttribute("userId");

 

解决方法一:

HTTP请求下一级,添加配置元件->HTTP Cookie 管理器。

添加JSESSIONIDcookie信息。如下图所示:



 
<!--[endif]-->

第一次访问应用服务器的时候,应用服务器会产生一个sessionid用于维护客户端的信息,tomcatsessionidkeyjsessionid

jsessionid可以通过chrome浏览器的Resources->Cookies获取到:



 
<!--[endif]-->

详见【工作流性能测试_启动流程.jmx】测试计划。

 

解决方法二:

新建2个循环控制器:

登录-循环控制器和启动-循环控制器

登录-循环控制器的循环次数设置为1,启动-循环控制器的次数视性能测试情况设置。

并在需要用到sessionHTTP请求的上一级目录建立HTTP Cookie 管理器。

这样启动的时候就可以获取到session中的用户Id了。

 



 
<!--[endif]-->

 

详见【工作流性能测试_登录后启动.jmx】测试计划。

 

4.JMeter关联

进入待办任务界面,需要解析返回的任务列表,获取到其中的工作项Id,然后根据获取到的工作项Id进入到任务明细界面,并进行推送操作。这个场景需要通过JMeter的关联实现。

在要解析的HTTP请求之后,新建一个后置处理器->正则表达式提取器。

 



 
<!--[endif]-->

引用名称:workitemId,可以在之后当做变量用

正则表达式:<input type="hidden" workitemId="(.+?)"/> ,括号中的是提取出的变量值。

对应的jsp代码片段为:

<input type="hidden" workitemId="${task.workitemId}"/>

请求返回的响应结果片段为:

<input type="hidden" workitemId="00fee14fa37748baaf1932fec7bd0ceb"/>

                                     <input type="hidden" proDefId="simplePro"/>

模板:$1$,表示根据匹配到的字符串再做分组区分,如果要去正则表达式的第二组参数则设置为$2$,此处只有一组参数,设置为$1$

匹配数字:0,代表随机获取一个,此应用每次返回10条任务,随机获取其中一条。

 

获取之后就可以在下一个请求中使用${workitemId}作为参数用了。



 
<!--[endif]-->

详见【工作流性能测试_推送.jmx】测试计划

5.JMeter参数化

推送测试的时候不能多个线程同时推送同一条工作项,所以要模拟不同的登录用户,获取不同的任务列表,然后进行推送测试。这个场景需要通过JMeter的参数化实现。

点击 选项->函数助手对话框,在弹出的窗口中选择_StringFromFile

名称栏可输入VUsers,值为文件对应的全路径,点击生成按钮,就可以将生成的字符串,拷贝到需要用到的参数内。



 

 
<!--[endif]-->

 


<!--[endif]-->

 

这样登录用户就从之前配置的文件中获取了。

 

D:\apache-jmeter-2.11 \users.txt内容如下:

admin

admin1

admin2

admin3

admin4

admin5

admin6

admin7

admin8

admin9

admin10

详见【工作流性能测试_登录后启动_参数化.jmx】测试计划

 

 

  • 大小: 3.8 KB
  • 大小: 27.2 KB
  • 大小: 29.3 KB
  • 大小: 46.2 KB
  • 大小: 21.9 KB
  • 大小: 6 KB
  • 大小: 4 KB
  • 大小: 52.7 KB
  • 大小: 39.6 KB
  • 大小: 21.7 KB
  • 大小: 27.2 KB
  • 大小: 19.9 KB
分享到:
评论
2 楼 liaodongdakai 2019-02-23  
分享——https://pan.baidu.com/s/1AAgjvQHYMNm4mw--vl3tAA 提取码: 1m99
1 楼 haoxuexi87 2018-05-03  
Jmeter性能测试从入门到精通(2018年最新)
课程观看地址:http://www.xuetuwuyou.com/course/251
课程出自学途无忧网:http://www.xuetuwuyou.com


课程介绍
全程实战,每个知识点通过实际项目演练讲解
理论实践结合,既会做,又知道为什么这样做
讲解时同其他工具做对比,加深理解,了解区别
分享技巧,用起来事半功倍
从基础讲起,小白也能接受


课程目标
熟练掌握 jmeter 工具
熟练使用 jmeter进行脚本开发
熟练使用 jmeter进行接口测试
熟练使用 jmeter 进行性能测试
熟练使用抓包工具 fiddler


适合人群
初级测试工程师
零基础、初学者、想步入性能测试领域的测试人
对jmeter性能测试感兴趣的人员
功能测试转性能测试
功能测试转接口测试


课程目录:
1:Jmeter 安装及环境配置
2:Jmeter 目录及配置文件说明
3:Jmeter 各大组件介绍说明
4:实战项目环境搭建
5:脚本录制之 badboy
6:脚本录制之 jmeter 代理
7:脚本录制之移动端APP录制
8:Fiddler抓包实战
9:移动端抓包实战
10:脚本增强之参数化(多方式实现)
11:脚本增强之高级参数化
12:脚本增强之关联
13:脚本增强之关联的高级应用
14:脚本增强之集合点、思考时间
15:脚本增强之断言
16:脚本增强之逻辑控制
17:Jmeter之IP欺骗
18:命令行压测及生成报告
19:Jmeter之分布式压测
20:jmeter扩展插件
21:自己动手开发jmeter插件
22:FTP协议实战
23:WebService协议实战
24:JDBC协议实战
25:JDBC协议实战增删改查
26:JDBC协议实战高级操作
27:Jmeter4.0的一些更新

相关推荐

Global site tag (gtag.js) - Google Analytics