[版权所有: whoistester.com & jmeter.cf]

http://wenku.baidu.com/linkurl=9zc4VHe6vUUeMdDZPpNsRehkazZFwC0l8GWoJKBt9ZIJliZYj1yHVamdOseicOKnzsTDy7NtyAVV9bmIqah1m0U9i4ZKqnpz7WB01Euw8Mu

今天我们就来实际用Jmeter创建一个测试场景,并进行性能测试. 注:由于本人使用中文版本,使用英文版本的请注意具体的菜单及参数名称.

创建测试脚本有两种方式:1、通过jmeter各种元件创建场景  2、通过badboy录制脚本

一、通过jmeter各种元件创建场景

1. 添加线程组(相当于lr里的scenario 设置)

打开jmeter主窗口后, 选择左侧树形结构里的"测试计划". 然后右键选择添加, 选择"threads(users)",我们可以看到

jp@gc开头的是google jmeter plugins里的threads group, 稍后再做解释。其他三个thread group是1)setup thread group 2) teardown thread group. 3) thread group(线程组).  如果您用过junit,想必你不会对setup ,teardown这2个字眼陌生。 即时每用过,也没关系。 熟悉lr的应该知道,lr的脚本除了action里是真正的脚本核心内容,还有初始化“环境”的初始化脚本和测试完毕后对应的清除信息的脚本块。 那么这里 setup thread group 和 teardown thread group 就是分别指这两部分。

ok,我们先添加一个线程组。

jmeter自带的thread group非常简单。  一个thread 代表一个vuser,那么我们如果需要多少用户并发,设置多少线程数即可。ramp-up period, 本人理解是多少时间从0个 vuser 上升到您指定的vusers数。从这些参数可以看,非常简单。但不能设置测试的时间,这一点不是特别善解人意。不过还好我们有jmeter plugins,  带的thread group 添加了这个功能。

设置调度器可以设置线程组启动的开始时间和结束时间(实践结论是设置调度器配置时,需要设置循环次数为永远)

2。添加一个http sample (测试脚本的主体)

选中线程组,右键添加一个http sample。如图所示,用baidu作为被测系统。

我们可以输入默认的连接超时和响应超时时间。lr的默认为120秒。所以我们也同样输入120秒。

3。添加结果树(用来debug脚本,遇到性能测试错误排查错误等,默认不会添加,所以需要手动添加)

为了方便调试该测试脚本,我们同样在sample的后面添加一个“监听器”里的“查看结果树”。这样每次运行,默认会把每次的http请求的request 和response 内容记录下来,方便我们进行debug脚本。当脚本调试通过后,则我们需要将查看结果树立的“仅显示日志错误”选中,这样错误的便会记录下来,方便遇到错误,进行排查。

4。添加聚合报告(用来记录执行的http sample的执行结果等,需要手动添加)

聚合报告里可以记录成功的事务数, 平均响应时间(最大,最小,90%), 错误率,网络吞吐量,事务每秒。我们关心的测试数据基本都在这里。

ps:响应时间单位为微妙,单位换算为:1秒=1000毫秒=1000000微秒

5。那么我们就可以执行本次简单的测试了。

那么先来描述一下这次的测试场景。我们把vusers数改成2, 循环次数改为5次。

就是并发用户数: 2

思考时间:0

循环次数:5次,循环完毕停止测试。

6。清除之前的debug信息(ctrl+E),erase清除掉之前记录的测试数据,选择菜单“运行”-〉“启动”,则开始了本次测试。

二、通过badboy录制脚本

  见另一篇关于badboy录制jmeter脚本的介绍http://www.cnblogs.com/wangcp-2014/p/4810446.html

 

Jmeter 快速入门教程(二)--创建简单web测试的更多相关文章

  1. 2.Jmeter 快速入门教程(二)--创建简单web测试 打印 E-mail

    今天我们就来实际用Jmeter创建一个测试场景,并进行性能测试. 注:由于本人使用中文版本,使用英文版本的请注意具体的菜单及参数名称. 1. 添加线程组(相当于lr里的scenario 设置) 打开j ...

  2. Jmeter 快速入门教程(三-1) --添加响应断言(即loadrunner中所指的检查点)

    [版权所有: whoistester.com & jmeter.cf] 上一节课,我们创建了一个测试场景,并进行了少量vuser的负载测试. 有时候我们执行了测试,但是发现并不是所有事务都执行 ...

  3. 3.Jmeter 快速入门教程(三-1) --添加响应断言(即loadrunner中所指的检查点)

    上一节课,我们创建了一个测试场景,并进行了少量vuser的负载测试. 有时候我们执行了测试,但是发现并不是所有事务都执行成功了. 那是因为我们只是发起了测试,但并没有对每次请求测试的返回作校验. 所以 ...

  4. 7.Jmeter 快速入门教程--录制复杂web测试脚本

    Jmeter的功能简单,不需要有脚本语言的编写经验,纯图形界面添加测试场景, 用起来上手很快.但是如果手动添加每一个web(http/https)请求,费时又费力.而且有可能最后手动编写的和实际发的请 ...

  5. ThinkPHP3快速入门教程二:数据CURD

    CURD(创建[Create].更新[Updata].读取[Read].删除[Delete]),定义了用于处理数据的基本原子操作. CURD在具体的应用中并非一定使用create.updata.rea ...

  6. Jmeter 快速入门教程(三-3) -- 使用参数化

    参数化:简单的来理解一下,我们录制了一个脚本,这个脚本中有登录操作,需要输入用户名和密码,假如系统不允许相同的用户名和密码同时登录,或者想更好的模拟多个用户来登录系统. 这个时候就需要对用户名和密码进 ...

  7. 1.Jmeter 快速入门教程(一) - 认识jmeter和google插件

    Jmeter是免费开源的性能测试工具( 同时也可以用作功能测试,http协议debug工具 ).  在如今越来越注重知识产权的今天, 公司越来越不愿意冒着巨大的风险去使用盗版的商业性能测试工具. 但如 ...

  8. 10.Jmeter 快速入门教程 -- 用Jmeter测试你的EJB

    有时候,需要对EJB进行性能基准测试,这对开发非常有帮助. 有很多种方法可以这么做, 当然我们这里介绍Apache's Jmeter 来进行实验测试. 非常不幸的是, Jmeter没有提供一个现成的测 ...

  9. Jmeter 快速入门教程(三-2) -- 设置集结点

    集合点:简单来理解一下,虽然我们的“性能测试”理解为“多用户并发测试”,但真正的并发是不存在的,为了更真实的实现并发这感念,我们可以在需要压力的地方设置集合点, 还拿那个用户和密码的地方,每到输入用户 ...

随机推荐

  1. 问题:LVM lvextend增加空间后,df查看还是原来空间

    1.LVM的调整空间大小: #lvextend -L +1300M /dev/mapper/ycgsstore_sdb-wmy #lvdisplay wmy ycgsstore_sdb -wi-ao- ...

  2. 《linux文件权限管理大总结》RHEL6

    在linux系统下文件的权限通常会以下面的格式显示出来: Chmod文件权限: 权限的管理chmod -a  所有的权限 -u 文件所有者的权限 -g 组权限 -o 其他用户的权限 可以使用运算符来设 ...

  3. wordpress 在linux上配置固定url方法

    wordpress 设置固定url总结 相信好多用wordpress的网友为了提升wordpress对搜索引擎的友好,或者是为了写的博客地址更好记,都会在wordpress的后台设置固定url的方式. ...

  4. php实现图片加密解密,支持加盐

    一个简单的图片加解密函数 使用client跑,不要使用浏览器跑 qq845875470 ,技术交流 <?php /** * Created by hello. * User: qq 845875 ...

  5. Apache 的 Rewrite 规则详细介绍

    Rewrite标志: R[=code](force redirect) 强制外部重定向 F(force URL to be forbidden) 禁用URL,返回403HTTP状态码 G(force ...

  6. ios 录音

    http://code4app.com/ios/%E5%BD%95%E9%9F%B3%E5%92%8C%E6%92%AD%E6%94%BE/51ba821b6803fa6901000000

  7. 不再用.NET框架

    .NET 平台很棒.真的很棒.直到它不再那么棒.我为什么不再用 .NET?简单来说,它限制了我们选择的能力(对我来说很重要),转移了我们的注意力,使得我们向内认知它的安全性,替代了帮助我们认知外面广阔 ...

  8. Oracle中的注释

    注释用于对程序代码的解释说明,它能够增强程序的可读性,是程序易于理解. 单行注释: 用“--”,后面跟上注释的内容 Declare Num_sal number; --声明一个数字类型的变量 Var_ ...

  9. 转:一份基础的嵌入式Linux工程师笔试题

    一. 填空题: 1. 一些Linux命令,显示文件,拷贝,删除 Ls cp rm 2. do……while和while……do有什么区别? 3. Linux系统下.ko文件是什么文件?.so文件是什么 ...

  10. Web开发从零单排之二:在自制电子请帖中添加留言板功能,SAE+PHP+MySql

    在上一篇博客中介绍怎样在SAE平台搭建一个html5的电子请帖网站,收到很多反馈,也有很多人送上婚礼的祝福,十分感谢! web开发从零学起,记录自己学习过程,各种前端大神们可以绕道不要围观啦 大婚将至 ...