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 管理器。
添加JSESSIONID的cookie信息。如下图所示:
<!--[endif]-->
第一次访问应用服务器的时候,应用服务器会产生一个sessionid用于维护客户端的信息,tomcat的sessionid的key是jsessionid。
jsessionid可以通过chrome浏览器的Resources->Cookies获取到:
<!--[endif]-->
详见【工作流性能测试_启动流程.jmx】测试计划。
解决方法二:
新建2个循环控制器:
登录-循环控制器和启动-循环控制器
登录-循环控制器的循环次数设置为1,启动-循环控制器的次数视性能测试情况设置。
并在需要用到session的HTTP请求的上一级目录建立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】测试计划
相关推荐
"JMeter性能测试-day05-all"可能涉及到监控系统资源,例如CPU、内存和磁盘使用情况,这通常通过集成其他工具,如JMX监控或插件来实现。理解这些指标可以帮助分析性能瓶颈。 "JMeter性能测试-day06-all"可能讲解了...
熟练学习Jmeter工具独立完成常见的性能测试项目熟练使用Jmeter进行脚本开发熟练使用Jmeter进行性能测试熟练使用Jmeter进行接口测试 1) 第一阶段为JMETER 5.4.1 工具使用篇,通过Jmeter 介绍和安装、http 取样器、...
Apache JMeter 是一款强大的性能测试工具,用于评估各种应用程序、服务器和协议的性能。它是一个完全免费的开源软件,由100%的Java编写,支持多种协议的测试,包括HTTP、HTTPS、FTP、数据库(JDBC)、消息中间件...
【JMeter性能测试进阶课件】主要涵盖了如何利用JMeter这款开源的负载测试工具进行Web应用程序的性能和功能测试。JMeter具有丰富的组件,包括测试计划、线程组、取样器、断言和监听器,可用于模拟多用户并发访问,...
性能测试工具JMeter是软件质量保证过程中的重要组成部分,它主要用于评估和优化应用程序的性能、负载和稳定性。JMeter由Apache软件基金会开发,是一个开放源代码的Java应用,支持多种类型的测试,包括功能测试、负载...
Apache JMeter是一款强大的开源性能测试工具,主要用于模拟大量并发用户对服务器、网络或者数据库进行压力测试,以评估系统在高负载下的稳定性和性能。JMeter最初设计为Web应用的负载和性能测试工具,但随着时间的...
每周的PPT资料分别涵盖了JMeter性能测试的不同阶段,从第一周的基础操作,到第四周的脚本录制,再到第六周的高级特性和调优,形成了一套完整的自学路径。建议按照课程顺序逐步学习,并通过实践操作加深理解。 通过...
JMeter是Apache组织开发的一款强大的、开源的压力测试工具,主要用于对Web应用进行性能测试和负载测试。它不仅可以检查服务器在高并发情况下的稳定性,还能帮助开发者找出系统性能瓶颈,优化应用性能。以下是对...
【JMeter 优化测试报告模板】是一份专为性能测试设计的报告模版,它针对JMeter工具进行了定制,旨在帮助测试人员系统性地记录、分析和展示JMeter测试的结果,以便于理解应用的性能瓶颈并进行优化。JMeter是一款开源...
**测试工具**是提高测试效率和准确性的重要手段,例如JMeter,这是一个开源的性能测试工具,主要用于模拟大量并发用户进行负载和压力测试。JMeter可以用于测试Web应用的性能,如响应时间和吞吐量,从而帮助识别系统...
Apache JMeter是一款广泛使用的开源压力测试工具,主要设计用于测试Web应用的性能和负载。在“jmeter接口打压工具”这个主题下,我们深入探讨JMeter如何帮助测试接口的稳定性和抗压能力。 1. **JMeter简介** ...
《JMeter:由浅入深学性能》是一本旨在帮助读者快速掌握性能测试工具JMeter的书籍。JMeter是Apache组织开发的一款强大的、开源的、跨平台的性能测试工具,适用于Web应用、FTP服务器、数据库等多种协议和服务的性能...
总的来说,JMeter是一款强大的性能测试工具,尤其对于Java应用来说,它是必备的测试利器。无论是在开发阶段的性能验证,还是在上线后的持续监控,JMeter都能提供有力的支持。通过深入学习和实践,你可以更好地利用...
JMeter,全称为Apache JMeter,是一款由Java开发的开源功能和性能测试工具。它最初设计用于Web应用的负载和性能测试,但随着时间的发展,其功能逐渐扩展,现在可以应用于各种协议和服务的测试,包括HTTP、FTP、SOAP...
JMeter是一款广泛使用的开源性能测试工具,主要用于模拟大量并发用户对服务器进行压力测试,检查其在高负载下的稳定性。在JMeter中,我们可以通过安装插件来扩展其功能,其中"jp@gc - Ultimate Thread Group"是...
Apache JMeter是一款开源的负载测试工具,常用于Web应用的性能测试。安装JMeter的具体步骤如下: - 下载最新版本的JMeter安装包。 - 解压缩下载的文件到指定目录。 - 配置JAVA_HOME环境变量指向Java安装目录。 ...
总结起来,JMeter是一个强大的性能测试工具,通过SSL验证可以测试HTTPS服务,使用插件和分布式测试可以模拟大规模并发并进行服务器监控。结合Maven和Jenkins,可以实现测试的自动化和持续集成,提高软件开发的质量和...