1.5 QTP精华—对象库(上)之基础攻略篇
阶段要点
● 初步了解QTP中的测试对象模型。
● 明确Object Identification是管理对象模型的长官。
● 掌握智能识别原理、机制和各项设置。
● 对象库基本操作之添加、更新、对象闪烁、副对象库(Associate Repositorys)。
● 一个有趣的实验证明,做项目时手工添加对象的好处与效率。
● Export Local Objects与Export and Replace Local Objects。
● 掌握并熟练运用Object Spy。
● 明确使用公共对象库的必要与优点。
● 熟练驾驭对象库指挥官Object Repository Manager。
● Object Repository Manager的两个王牌级辅助工具初体验。
1.5.1 引言
如果说,上一章节是彻底摆脱脚本录制的一个良好的开端,是带领读者逐步走向QTP自动化测试项目开发的台阶,那么从本章节开始,读者将跨出巨大的一步,真正开始走进QTP脚本开发的世界。
在QTP这个自动化测试工具中,存在着两种脚本开发模式,第一种开发模式就是从本章节开始要逐步具体、深入、详细讲解的“对象库编程”。当然,本书的一贯原则是“实用原则”,所以无论是在上篇(本章节)还是下篇(1.6章节)都绝对不会详细地讲解在实际项目运用中用不到或很少会用到的知识点。想要精通对象库编程这个开发模式,并驾轻就熟地运用到自动化测试项目中,首当其冲就是要先“精通”QTP的对象库,作者讲的对象库其实是一个总称和概括,从大的方面包含对象库本身的功能、对象库的机制与原理、对象库编程知识、如何在实际项目中运用对象库编程等。
在上面作者主要针对QTP对象库的机制与原理以及对象库本身的功能做深入讲解,而对象库编程的部分则会在下篇中精彩解读。虽然需要掌握那么多知识的确很烦,也需要一个过程,但是作者认为上篇和下篇中的所有内容已经是最精简的了,所以,请读者务必对这些知识点做到“精通”,它们都是经常在实际项目中使用的,可以说是QTP脚本开发的必备技能!如果不能精通QTP的对象库,那一定不会是一名合格的QTP自动化测试工程师!
1.5.2 对象库的出现改写了软件测试历史
QTP的对象库是这个强大的自动化测试工具的核心,也是其精华所在!有了对象库这一整套功能、机制,QTP才可以在那么多的自动化测试工具中脱颖而出!QTP的整套对象库功能与对象识别机制给自动化测试人员带来了前所未有的体验,它的成熟、上手度、良好的使用感受都是市面上其他任何自动化测试工具无法给予的。对象库是QTP在实际项目应用中的枢纽,读者一旦精通了它,会感觉到在项目应用、QTP各项功能中都会和对象库产生必要联系。本章节的内容会结合大量仿真项目的应用来引导读者逐步精通对象库,希望读者能够做到举一反三,细细去品味对象库带来的不同感受(针对之前使用过其他自动化测试工具的读者效果更佳)!
小小的总结一下,可以说QTP在实际项目中的应用开发(特别是自动化测试项目做成功的案例)绝大部分都基于对象库编程模式,所以,对象库的出现改写了自动化测试领域的历史,也推动了这个技术领域走向更高的台阶!另外,先预告下,本章节以及下一章节的篇幅会很大,因为这两个章节的内容是QTP最精华的部分,也是整个第一章的最重要的一块,务必耐心学习。
1.5.3 一个简单的实例介绍对象库原理、机制及操作流程
1.5.3.1 对象模型的老大Object Identification和对象库的暧昧关系
在介绍对象库的原理与机制之前,首先说一下QTP自动化测试的原理,分以下3个步骤。
(1)封装真实被测对象并转化为QTP对象到对象库。
(2)对比对象库里的对象鉴别属性和运行时的真实被测对象的鉴别属性。
(3)对比后如果一致,则说明对象成功匹配并可以继续对该真实被测对象进行后续操作,如果两者不一致则报错,提示为对象无法识别。