[收集]LR, QTP, WinRunner的区别

上一篇 / 下一篇  2011-03-17 15:59:41

  • 一直以来都有个疑问,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和WinRunner是做功能性测试,其中QTP更适合做B/S结构的功能测试,其基本原理是对象识别;WinRunner更适合做C/S结构的功能测试。

  • QTP是记录鼠标和键盘的运动轨迹,以及它们停止坐标的位置的;LR是记录CLICP和server之间的数据包的内容的。

  • QTP和LR录制脚本的区别: 第一:关注点不同。由于QTP关注的是功能性的测试,所以QTP的脚本录制重点在于AUT的画面或者说是功能实现;相反,LoadRunner做性能测试,其脚本录制的重点在于服务器端和用户端之间的数据流或者字节包。第二:脚本内部逻辑不一样。QTP做功能测试,脚本里面存在【If Then Else End if】【for to step】这样的逻辑表达式,以期在不同测试用例下软件会做出的不同反应,或者满足某种条件时,测试用例通过、记录测试结果到制定文档等活动;而LoadRunner做性能测试,整个脚本中不会出现选择,判断,循环等逻辑表达式。


TAG:

 

评分:0

我来说两句

我的栏目

日历

« 2024-05-15  
   1234
567891011
12131415161718
19202122232425
262728293031 

我的存档

数据统计

  • 访问量: 5711
  • 日志数: 3
  • 建立时间: 2011-03-11
  • 更新时间: 2011-03-17

RSS订阅

Open Toolbar