51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 4809|回复: 6
打印 上一主题 下一主题

JMeter研究笔记

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2010-3-30 17:05:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在Apache官网看了半天,重点研究了下JMeter几个我常用几个方面的性能测试。
也放到这给有兴趣的TX参考一下,有错欢迎提出。谢谢

下面的记录中包含了一些我使用的例子的信息,以及Apache JMeter官网的例子讲解。
当然了,JMeter的能覆盖的不只我研究的这些,有空再补上。

JMeter Test Plan组成及设置详解:

Thread Group:
Add --> ThreadGroup
Number of threads(users), 该属性模拟虚拟用户数。
Ramp-Up Period(in seconds), 启动所有用户的时间。eg:设置Ramp-Up period为5秒,则JMeter将在5秒内启动所有的用户。因此,当用户数为5时,因此启动每个用户的时间间隔应为:5 users / 5 seconds = 1 user per second. 如果该属性设为0,则JMeter将立即启动所有用户。
Loop Count,即重复测试的次数。 如果设为1, 则JMeter仅运行测试1次。如果需要重复运行Test Plan,则需选择“Forever”选项。

HTTP Request Defaults:
Add --> Config Element --> HTTP Request Defaults
设置HTTP requests的默认设置,HTTP Request功能将会使用这里设置的默认项。
Name, 该项通常保留其默认值,
Web Server's Server Name or IP,这里设定的Server Name或者IP是Test Plan中所有HTTP请求的目标。即所有的HTTP请求都会被送往这里设定的Web Server。

HTTP Cookie Manager:
Add --> Config Element --> HTTP Cookie Manager

HTTP Requests:
提示:HTTP Requests的执行顺序以在Test Plan树种显示的为准。
Add --> Sampler --> HTTP Request
设置HTTP Request, 修改Name, 设置Path,若访问的是主页,通常设为"/". 其他则不用修改,因为Server Name等已在HTTP Request Defaults中设置完毕。
如果需要添加其他HTTP Request访问其他页面,则需再次添加HTTP Request,并修改Name以及Path。以jakrata为例:访问Guidelines页面,添加HTTP Request后,修改Name为:"Project Guidelines", Path设置为:"/site/guidelines.html".
测试其他应用时,以此为参考。


高级Test Plan的创建
用户session以及URL重写的处理:
URL Re-writing Modifier被添加在哪个控件下,则URL Re-writing只影响该控件下的requests.

HTTP Header Manager
HTTP Header Manager提供让用户定制JMeter发送的HTTP requests header的功能。
HTTP Request Header包含的属性有:"User-Agent","Pragma","Referer",etc.
HTTP Header Manager跟HTTP Cookie Manager一样,通常都是添加在Thread Group下.


创建一个数据库Test Plan:
1.添加一个Thread Group,命名为:JDBC Users, 添加虚拟用户数:10,Ramp-Up period: 0, 循环次数:3
2.添加JDBC request, Add --> Config Element --> JDBC Connection Configuration,
Variable Name Bound to Pool, 通常用于JDBC Sampler 并唯一标示被使用的配置。这里不做改动,默认留空即可。
Connection Pool Configuration, 不做改动,默认
Connection Validation by Pool, 不做改动,默认
Database Connection Configuration下设置,DB URL,如:jdbc:mysql://localhost:3306/test
JDBC Driver class, 如:com.mysql.jdbc.Driver, 用户名,密码即可。
JMeter将使用JDBC connection 控制面板中的信息创建数据库连接池。几个不同的JDBC连接都可以被使用,但是他们必须有唯一的名称。每个JDBC Request对应一个JDBC配置池。
3.添加JDBC Request,Add --> Sampler --> JDBC Request,修改Name,Pool Name改为:MySQL(跟配置元素一样),输入SQL查询语句。可以根据需要再次添加JDBC Request,与上步骤同。


FTP Test Plan:
http://jakarta.apache.org/jmeter ... -ftp-test-plan.html
1. Add --> ThreadGroup. 同时设置用户数,启动用户时间间隔总数以及循环次数。
2. Add --> Config Element --> FTP Request Defaults,Name通常保留不做改动。Server Name/IP为所有FTP请求的目标。
3. Add --> Sampler --> FTP Request,修改Name,Server/IP保留不做修改,因为在FTP Request Defaults里已经设置。File to Retrieve From Server,填写文件再ftp服务器上的路径,如:pub/msql/java/tutorial.txt,Login下填写相应的用户名密码。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

  • TA的每日心情
    奋斗
    2018-2-28 18:04
  • 签到天数: 40 天

    连续签到: 1 天

    [LV.5]测试团长

    2#
    发表于 2010-3-31 11:14:26 | 只看该作者
    感谢。对于JMeter这类开源工具,使用得较多。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    3#
    发表于 2010-3-31 16:33:55 | 只看该作者
    jmere可以用来测试ruby语言的 web网站吗  ?     看了资料 知道jmeter 是基于java的   。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    4#
    发表于 2010-4-1 09:26:23 | 只看该作者
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5#
    发表于 2010-4-1 09:26:35 | 只看该作者
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    6#
    发表于 2010-5-12 18:02:07 | 只看该作者
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    7#
    发表于 2010-5-22 21:27:36 | 只看该作者
    原帖由 小贝流浪记 于 2010-3-31 16:33 发表
    jmere可以用来测试ruby语言的 web网站吗  ?     看了资料 知道jmeter 是基于java的   。

    跟系统的开发语言没有太多关系,主要是跟系统跑的协议有关
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-5-18 04:00 , Processed in 0.070147 second(s), 27 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表