当前位置: 代码迷 >> Web前端 >> 用以web测试的JMeter工具
  详细解决方案

用以web测试的JMeter工具

热度:500   发布时间:2014-02-12 21:25:08.0
用于web测试的JMeter工具

?

?

参考文章

http://www.ibm.com/developerworks/cn/opensource/os-pressiontest/

http://www.blogjava.net/qileilove/archive/2012/04/09/373628.html

http://www.onjava.com/pub/a/onjava/2003/01/15/jmeter.html

?

?

?

JMeter, 一个100%的纯Java桌面应用,它是Apache组织的开放源代码项目,它是功能和性能测试的工具。JMeter可以用于测试静态或者动态资源的性能 (文件、Servlets、Perl脚本、Java对象、数据库和查询、ftp服务器或者其他资源)。原先Jmemer是为Web/HTTP测试而设计 的,但是它已经扩展以支持各种各样的测试模块。它和用于HTTP和SQL数据库(使用JDBC)的模块一起运送。它可以用来测试静止资料库或者活动资料库 中的服务器的运行情况,可以用来模拟对服务器或者网络系统加以重负荷以测试它的抵抗力,或者用来分析不同负荷类型下的所有运行情况。它也提供了一个可替换 的界面用来定制数据显示,测试同步及测试的创建和执行。官方网址 http://jmeter.apache.org/

?

JMeter 的特性:
  a) 能够对HTTP和FTP服务器进行压力和性能测试, 也可以对任何数据库进行同样的测试(通过JDBC)。
  b) 完全的可移植性和100% 纯Java。
  c) 完全 Swing 和轻量组件支持(预编译的JAR使用 javax.swing.*)包。
  d) 完全多线程 框架允许通过多个线程并发取样和 通过单独的线程组对不同的功能同时取样。
  e) 精心的GUI设计允许快速操作和更精确的计时。
  f) 缓存和离线分析/回放测试结果。
  g) 高可扩展性:
  h) 可链接的取样器允许无限制的测试能力。
  i) 各种负载统计表和可链接的计时器可供选择。
  j) 数据分析和可视化插件提供了很好的可扩展性以及 以及个性化。
  k) 具有提供动态输入到测试的功能(包括Javascrīpt)。
  l) 支持脚本变成的取样器(在1.9.2及以上版本支持BeanShell)。

?

聚合报告显示测试结果
Label:每个 JMeter 的 element (例如 HTTP Request )都有一个 Name 属性,这里显示的就是 Name 属性的值
#Samples:表示你这次测试中一共发出了多少个请求,如果测试计划模拟10个用户,每个用户迭代10次,这里就会显示100
Average:平均响应时间 ― 默认情况下是单个 Request 的平均响应时间,当使用了事务控制器时,也可以以事务为单位显示平均响应时间
Median:中位数,也就是 50 %用户的响应时间
90% Line: 90 %用户的响应时间
Min:最小响应时间
Max:最大响应时间
Error%:错误率,本次测试中出现错误的请求的数量 / 请求的总数
Throughput:吞吐量 ―― 默认情况下表示每秒完成的请求数( Request per Second )
KB/Sec:每秒从服务器端接收到的数据量
?
?
JMeter主要组件介绍-线程组
名称:为线程组起名字。
线程属性-线程数:设置发送请求的用户数目 ,即并发数。
线程属性-Ramp-Up Period(in second):线程间的时间间隔,单位是秒。即所有线程在多少时间内启动。
线程属性-循环次数:请求的重复次数,如果选择后面的forever(默认),那么 请求将一直继续,如果不选择forever,而在输入框中输入数字,那么请求将重复指定的次数,如果输入1,那么请求将执行一次,如果是0,会出现问题。
调度器配置-启动时间:测试计划什么时候启动,启动延迟会覆盖它。
调度器配置-结束时间:测试计划什么时候结束,持续时间会覆盖它。
调度器配置-持续时间:测试计划持续多长时间,会覆盖结束时间。
调度器配置-启动延迟:测试计划延迟多长时间启动,会覆盖启动时间。
JMeter主要组件介绍-取样器(HTTP请求)
?
?
名称:HTTP请求的名字。
Web服务器-服务器名称或IP、端口号,脚本录制时自动添加,也可以使用“用户自定义变量”。
HTTP请求:用默认值即可。
同请求一起发送参数:请求中的参数、值可以在此设置,需要用到参数化及动态数据关联,我们在后面专门介绍。
同请求一起发送文件:我可以制定同请求一起发送哪个文件。
其他任务包括:从HTML文件中获取所有内含的资源、用作监视器、Embedded URLs must match
?
?
?
监听器(Listener)负责收集测试结果,同时也被告知了结果显示的方式。我们常用的包括:聚合报告、查看结果树、用表格查看结果,都支持将结果数据写入文件。其他的添加上去看看就行。聚合报告前面我们介绍过,后面是查看结果树和用表格查看结果的截图。
JMeter主要组件介绍-监听器(用表格查看结果)
?
?
?

?

?

?

?