QTP工作原理

QTP是GUI界面功能自动化测试工具,简单来说就是可以录制人操作,然后回放,工具根据录制好的人操作来操作系统,这样可以很好地进行回归测试。QTP的脚本运行其实就是一组对象有组织的执行自己的方法,最终完成一个流程的过程。当打开一个web时,想要脚本能够模拟人来操作整个流程,那多就要求这个脚本能够识别人的每一个操作,而人的操作实际上是对web页面上控件的操作,所以只要QTP的脚本能够识别人操作过的控件就可以模拟人的操作流程,而web页面上的控件都是QTP脚本中的对象,也就是说只有QTP脚本中的对象能够被唯一的识别出来,就可以模拟人的整个操作流程。 QTP支持直接访问DOM,可以通过DOM来访问HTML标签。在QTP中,访问DOM是通过使用page测试对象的object属性来进一步访问的,这样就可以访问到很底层的对象属性,可以用底层的对象属性来唯一区分web页面上的对象控件,这样就能够解决一些关于对象识别的错误。

 

LoadRunner工作原理

LoadRunner是性能测试工具,一般用来做压力、负载测试等性能测试。它是基于议协的的工具,它根据你测试的系统需求,选择合理的议协来 录制这个议协下发出的“信号”,然后它可以虚拟并发器回放那种“信号”; LoadRunner通过模拟上千万用户实施并发负载,实时性能监控的系统行为和性能方式来确认和查找问题。

1、VuGen发生器:捕捉用户的业务流,并最终将其录制成一个脚本:

(1)选择相应的一种协议;

(2)在客户端模拟用户使用过程中的业务流程,并录制成一个脚本;

(3)编辑脚本和设置Run-Time Settings项;

(4)编译脚本生成一个没有错误的可运行的脚本。

2、控制器(Controller):

(1)设计场景,包括手动场景设计和目标场景设计两种方式;

(2)场景监控,可以实时监控脚本的运行的情况。可以通过添加计数器来监控Windows资源、应用服务器和数据库使用情况。

场景设计的目的是设计出一个最接近用户实际使用的场景,场景设计越接近用户使用的实际情况,测试出来的数据就越接近真实值。

3、负载发生器(Load Generators):模拟用户对服务器提交请求。

通常,在性能测试过程中会将控制器和负载发生器分开;当使用多台负载发生器时,一定要保证负载均衡(指在进行性能测试的过程中,保证每台负载发生器均匀地对服务器进行施压)。

4、分析器(Analysis):主要用于对测试结果进行分析。