selenuim,qtp,loadrunner,jmeter有何区别

selenium和qtp是 功能的自动化测试,loadrunner和jmeter是性能的自动化测试

selenium要求代码能力比较高,适合用python,QTP一般用VBS,loadrunner一般用C,但是现在也可以用java等语言.

现在功能自动化用的工具最多的是QTP,但是selenium的趋势在增长,建议用这个工具

LR(性能测试工具)和QTP(自动化测试工具)的区别:

1、LR: 基于协议的性能测试;QTP: 基于UI对象的功能测试。
2、LR录制原理:捕获数据包。录制的前提是能识别协议报文;QTP 录制原理:消息机制,截获消息。录制的前提是能识别控件。
3、LR是性能测试工具,侧重的是压力,负载,容量,并发等的测试;QTP是功能测试工具,针对功能的测试。有一些人经常说QTP能做的LR也能做,比如web测试方面,LR也能进行回放,而LR能做的QTP却不能做,

那为什么不直接用LR呢?答:录制的协议不同。QTP是功能测试的工具,这个功能测试是指的基于GUI的功能测试.QTP的录制和回放都是真实的去操作客户端程序的各种GUI控件,回放的时候会真实的启动客户端程序. 而LR只是录制了客户端和服务器之间的通信数据,回放自然也是这些通信的数据,而且只有在录制的时候跟客户端程序有关系,回放的时候就跟客户端没有任何关系了,回放的时候不会启动客户端程序.

比如,注册一个论坛,QTP在回放脚本的时候会输入你每个基本信息的动作,然后发送这个表单到服务器,而LR录制的是通信协议,就不会回放输入每个基本信息的动作了,而是直接把已经保存的表单信息直接打包发送到服务器。 QTP目前最主要的应用是用于回归测试、版本验证测试阶段。

它本身是针对系统界面上的元素进行识别、操作,达到测试系统功能的目的。因此,自动化测试启动的时机或者说QTP开始介入的时机就要受到系统开发进度的制约。 只有当系统的界面元素不会频繁的变化、系统功能基本稳定,已经通过一至两轮的手工测试,确定系统不会存在重大缺陷时,才可以考虑自动化的实施。

Jmeter和LoadRunner的异同

1、Jmeter的架构跟LoadRunner原理一样,都是通过中间代理,监控&收集并发客户端发现的指令,把他们生成脚本,再发送到应用服务器,再监控服务器反馈的结果的一个过程.

2、分布式中间代理功能在Jmeter中也有,这个分布式分理是指可设置多台代理在不同PC中,通过远程进行控制,即通过使用多台机器运行所谓的Agent来分担LoadGenerator自身的压力,并借此来获取更大的并发用户数.LoadRunner也有些功能.

3、Jmeter安装简单,只需要解压Jmeter文件包到C盘上就可以了,其实是没有安装.要是你想执行调试测试脚本,前提是:装上jdk和netbean插件.而LoadRunner安装包有1G多,在一台P3.0,1G内存的PC上安装要一个多小时.要是装过较旧的盗版还不能再装新版,解决办法倒是有,但麻烦且花时间.

4、Jmeter没有IP欺骗功能,IP欺骗是指在一PC台上多个IP地址来分配给并发用户.这个功能对于模拟较真实的客户环境来说,是较有用.LoadRunner有此功能.

5、Jmeter也提供了一个利用本地ProxyServer(代理服务器)来录制生成测试脚本的功能,但是这个功能并不好用,测试对象的个别参数却要手工增加上去,还得附带装个IE代理,如GoogleToolbarDownloader这些插件来捕捉参数.但是有一个工具bodboy,利用这个工具可以录制操作,然后选择将脚本保存为Jmeter脚本,然后利用Jmeter可以打开并修改脚本

6、Jmeter的报表较少,对于要分析测试性能不足以作为依据.如要知道数据库服务器或应用程序服务的CPU,memory等参数,得在相关服务器上另外写脚本记录服务器的性能.

7、Jmeter做性能测试,主要是通过增加线程组的数目,或者是设置循环次数来增加并发用户,而LoadRunner可以通过在场景中选择要设置什么样的场景,然后选择虚拟用户数。

8、Jmeter可以通过逻辑控制器实现复杂的测试行为,相当于LoadRunner中的测试场景

9、Jmeter可以做web程序的功能测试,利用Jmeter中的样本,可以做灰盒测试,LoadRunner主要用作性能测试

10、Jmeter是开源的,但是使用的人较少,网络上相关资料不全面,需要自己去揣摩,而LoadRunner是商业软件,如果是正版,有技术支持,同时,网络上的资料相当多。

11、Jmeter的脚本修改,主要是对Jmeter中各个部件的熟悉程度,已经相关的一些协议的掌握情况,而不依赖于编程,而LoadRunner除了复杂的场景设置外,还需要掌握函数,修改脚本。

简要看看:[QTP] 基本使用
[QTP] 基本使用

猜你喜欢

转载自blog.csdn.net/qq_22820783/article/details/86471475