性能测试____Jmeter简介

来源:互联网 发布:mac的终端密码是什么 编辑:程序博客网 时间:2024/05/19 16:02

1.Jmeter简介

Apache JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。 它可以用于测试静态和动态资源,例如静态文件、Java 小服务程序、CGI 脚本、Java 对象、数据库、FTP 服务器, 等等。JMeter 可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。另外,JMeter能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证你的程序返回了你期望的结果。为了最大限度的灵活性,JMeter允许使用正则表达式创建断言。
Apache jmeter 可以用于对静态的和动态的资源(文件,Servlet,Perl脚本,java 对象,数据库和查询,FTP服务器等等)的性能进行测试。它可以用于对服务器、网络或对象模拟繁重的负载来测试它们的强度或分析不同压力类型下的整体性能。你可以使用它做性能的图形分析或在大并发负载测试你的服务器/脚本/对象。

2.Jmeter和loadrunner简介

由于对Loadrunner了解较少不方便做介绍 方便博友理解摘抄如下
1、jmeter的架构和loadrunner原理一样,都是通过中间代理,监控和收集并发客户端发出的指令,把他们生成脚本,再发送到应用服务器,再监控服务器反馈结果的一个过程;
  2、分布式中间代理功能在jmeter中也有,这个分页式代理是指可设置多台代理在不同PC中,通过远程进行控制,即通过使用多台机器运行的谓的agant来分担load generator自身的压力,并借引来获取更大的并发用户数,loadrunner也有此功能;
  3、jmeter安装简单,只需要解压jmeter文件包到C盘上就可以了,不用安装,要是你想执行调试测试脚本,前提是:装上jdk和netbean插件,而loadrunner安装包有1G多,在一台P3.0,1G内存的PC上安装要一个多小时,要是装过旧的盗版还不能再装新版,解决办法倒是有,但麻烦且花时间;
  4、Jmeter没有IP欺骗功能,IP欺骗是指在一台PC上多个IP地址分配给并发用户,这个功能对于模拟较真实的用户环境来说,是较有用,loadrunner有此功能;
  5、jmeter也提供了一个利用本地proxy server(代理服务器)来录制生成测试脚本的功能,但是这个功能并不好用,测试对象的个别参数要手工增加上去,还得附带装个IE代理,如 GoogleToolbarDownloader这些插件来捕捉参数,但是有一个工具badbody,利用这个工具可以录制操作,然后选择将脚本保存为jmeter脚本,然后利用jmeter可以打开并修改脚本;
  6、Jmeter的报表较少,对于要分析测试性能不足作为依据。如要知道数据库服务器或应用程序服务的cpu,money等参数,还得在相关服务器上另外写脚本记录服务器的性能;
  7、jmeter做性能测试,主要是通过增加线程的数目,或者是设置循环次数来增加并发用户,而loadrunner可以通过在场景中选择要设置什么样的场景,然后选择虚拟用户数;
  8、jmeter可以通过逻辑控制器实现复杂的测试行为,相当于loadrunner中的测试场景;
  9、jmeter可以做web程序的功能测试,利用jmeter中的样本,可以做灰盒测试,loadrunner主要用来做性能测试;
  10、jmeter是开源的,但是使用的人较少,网络上相关资料不全面,需要自己去揣摩,而loadrunner是商业软件,如果是正版本,有技术支持,同时,网络上的资料相当多;
  11、Jmeter的脚本修改,主要是针对jmeter中各个部件的熟悉程序,已经相关的一些协议的掌握情况,而不依赖于编程,而loadrunner除了复杂的场景设置外,还需要掌握函数,修改脚本

3.Jmeter应用场景

1.网站压力测试:测试单位时间内网站并发量(某个时间点访问网站的人数瓶颈)
2.web接口测试入参出参每个接口单位时间内最大请求量 更大访问量无效等问题 当然这些都可以用队列来解决
3.jdbc请求访问控制

4.高并发综合因素有哪些决定

1.说道高并发,从开发来说,轻量级框架,松耦合 框架的选型和数据库选型
2.sql性能的优化 连接池的优化 jvm优化
3.web服务器tomcat性能优化 nginx性能优化

高并发=单位时间内的请求和响应 完成的次数

1.用户网速--------2.sql性能--------3.数据库性能---------4.页面响应速度
每个环节效率低 就决定了并发量效率下降


原创粉丝点击