首页> TA的主页 > 使用JMeter完成常用的压力测试

使用JMeter完成常用的压力测试

来自: 贾女士 发布于: 2014-05-22 14:14:37
浏览(592) 评论(1) 赞(0) 收藏(1)
在众多类型的软件测试中,压力测试正是以软件响应速度为测试目标,尤其是针对在较短时间内大量并发用户的访问时,软件的抗压能力。本文以 JMeter 为例,介绍了如何使用它来完成常用的压力测试:Web 测试、数据库测试和 JMS 测试。
对于大多数的项目来说,并不会自行开发一个Web服务器,因此Web服务器压力测试的对象实际就是--发布到Web服务器中的软件。最简单的Web测试计划只需要三个 JMeter 的测试元件
1、在线程组中定义线程数、产生线程发生的时间和测试循环次数。
2、在http请求中定义服务器、端口、协议和方法、请求路径等。
表格监.听器负责收集和显示结果。
3、种设置对于包含了安全机制的 web 应用是不够的,典型的 web 应用一般都会:
1. 有一个登录页,它是整个应用的入口。当用户登录之后,应用会将用户相关的安全信息放到 session 中。
2. 有一个 filter,它拦截请求,检查每个请求相关的 session 中是否包含有用户安全信息。如果没有,那么请求被重定向到登录页,要求用户提供安全信息。
在这种配置下应用上面的测试计划,那么除了登录页之外的其它请求都将因为缺少用户安全信息,而使请求实际定位到登录页。如果不加断言,那么在监.听器看来所有的请求都是成功。而实际上,这些请求最终都没有到达它们应该去的地方。显然,这种测试结果不是我们所期望的。
为了成功的测试,至少有2种方法:
方法一,去掉程序的安全设置,如filter,使得不需要用户安全信息也能访问受限内容;
方法二,不修改程序,使用JMeter提供的"Http URL重写修饰符"或"Http Cookie管理器"。
对于第一种方法,有其局限性:
方法三,需要修改程序配置,如去掉web.xml中关于安全filter的设置。需要维护多个版本的web.xml,如压力测试和功能测试分别各自的web.xml,增加了维护成本,而且有可能会在测试之后忘记将web.xml修改回来。
对于一些需要用户安全信息的页面无能为力,如某些业务审计操作需要用户安全信息来记录。因为缺少这样的信息,注定了测试的失败。如果解决为了这个问题进一步的修改程序,那么因为存在多个版本的程序,那么其维护难度将大大增加。
虽然,第二种方法配置难度增加了,但是它不用修改程序。而且还可将测试计划保存成文件,以便重复使用。因此,选用第二种方法是较为理想的做法。下面以一个简化的例子说明使用方法二的配置步骤。

本文来源TA的公开社群:软件测试

打赏

他们都在说 (共1 条评论)

我要说

您尚未登录,请后再提交你的评论!
没有账号?

评论需加入社群,请点击软件测试

客户端

客户端

触屏版

触屏版

网页版

网页版

分享到: