概要说明:
1. 要重视基础知识的学习,尤其是Windows编程,它是你学好QTP的内功。
2. 要注重原理的掌握,否则只会头痛医头脚痛医脚,知其然未知其所以然。
3. 思想好比内功心法,工具好比天下绝学,内功深厚的人任何招式都能随心所欲挥洒自如。所谓“草木竹石不滞于物”,就是这个道理。
具体说明:
学习QTP的几个过程:
1. 首先,在掌握QTP之前,最好先把编程的基础打好——这也是我所强调的内功。
QTP采用的是VBScript脚本引擎,因此可以从VBScript 的编程语法学起,这包括VBScript自带的一系列丰富的函数库。
1)字符串操作的相关函数。
2)使用VBScript访问各种对象的技术,因为自动化测试做到一定程度就要开始组建自动化测试框架了。
框架无论采用Data-Driven思想还是Keyword-Driven思想,都需要去操作各种Windows相关的对象。
比如Windows API、WSH(Windows脚本宿主)和WMI(Windows管理规范)。
3)各种文件对象的访问技术。
访问文本文件的FSO(File System Object);
访问XML的 DOM(Document Object Model);
访问Excel的EOM(Excel Object Model);
访问数据库的 ADO(ActiveX Data Object)。
2. 其次,要深入了解QTP对象识别的原理和本质。
1)什么是强制属性,什么是辅助属性,什么是顺序标识符,什么是智能识别,它们之间是什么关系,有没有前后顺序?
2)对象库(Object Repository)和对象类型库(Object Identification),它们之间又有什么联系?
3. 掌握QTP最常用的Output Value和Checkpoint。
1) Output Value也就是输出值,可以获取被测程序的实际输出结果;
2) Checkpoint能够把获取到的实际结果和预先设定好的期望值做比较,也就是所谓的检查点。
QTP提供了一组非常丰富的输出值和检查点,方便自动化测试工程师使用它们快速建立测试场景——如果能用好它们,则可以很大程度上提高脚本开发的效率。
4. QTP的参数化功能用熟。
1) 因为自动化测试往往需要批量的执行测试用例,所以QTP提供了一种把脚本和参数分离的技术,也就是数据驱动.
通过把测试用例的参数参数化到DataTable或者环境变量中,达到循环执行测试用例的目的。
2) QTP中可以被参数化的对象有很多.
对象的名称可以参数化;
对象的属性值可以参数化;
对象的方法的参数也可以参数化;
5. 掌握各种对象识别故障的解决方案技术.
比如虚拟对象、标准类映射等
6. QTP容错技术-- 场景恢复技术
关于测试工具QTP:
1. QTP的优点、特点、缺点、难点?
优点:使得你的用例可以高度复用。
特点:简单易学。
缺点:对象识别的支持还是有些欠缺。软件本身有些BUG历经多次版本,始终未得到修复。
难点:让你的脚本按照你的需求一马平川的从头Run到尾,很难。
1)对象识别故障的解决就像人类的温饱问题一样,是最原始也是最基础的。
2)自动化框架的架设——这已经是属于另一个境界的问题了。
2. 最多的运用在哪些测试工作中?
QTP的特点在于高度复用,在任何相关场合都能得以应用。
1)最典型的是在 Regression Testing中。
2)在Configuration Testing方向,实战性非常好,可以大量省去手工测试的时间。
3. 自动化测试框架是什么?
自动化框架从最原始的script-object形式,
走向Data-Driven(data-script- object)形式,
继而走向Keyword-Driven(keyword-data-script-object)形式,
最后发展为今天的AOM。
自动化不必追求大而全,提倡采用的框架:
能把配置层、数据层、代码层、对象层、报告层和主控层分离开来,就很不错了。