|
在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下填写相应的用户名密码。 |
|