1.7.5 终极对决—对象库编程(OP)?VS描述性编程(DP)
关于对象库编程和描述性编程的学习就要接近尾声了。临近结束之时,再一起来分析一下对象库编程和描述性编程各自的优势,也即知己知彼百战百胜。
对象库的优势。
(1)可以通过Complete Word、“F7”等多个方式进行高效编程。这个特性描述性编程没有。
(2)对象库编程有一个比较好的特性,假设脚本中引用了同一个对象10多次,这个对象的名字之前取得不是太出色,项目经理要求改名。此时不需要改10多次,只需要进入对象库,对这个对象进行更名,脚本便会批量自动更新,很高效!这个特性描述性编程也没有。
(3)对象库编程不容易打错字,因为有Complete Word,想打错字都难。但是,描述性编程没有Complete Word,所以,打错字是家常便饭。关键是,对于一个新测试员来说,他不可能有敏锐的分析手段,往往因为这么一个小错别字会浪费很多时间。其实只是一个错别字而已,往往最后被误解成脚本发生了错误,无论怎么调试都看不出来。
描述性编程的优势。
(1)不用维护庞大的对象库,不过需要维护庞大的代码。所以这算是优势还是劣势?请读者感悟。作者在此提一句,其实在对象库功能做得如此智能的情况下,维护好对象库不难,只要根据在“对象库”那个章节中介绍的一些法则,如命名规范等就可以管理好对象库。
(2)描述性编程可以完成一些特殊的需求(上一个小节的主讲内容)。
最后的PK结果:对象库编程获胜!
1.7.6 总结
描述性编程的学习全部结束了,它是一个很好、很优秀的功能,但同时也是一把双刃剑。最大的问题就是由于脚本无法维护导致自动化测试项目的失败。
通过本章的学习,希望读者不光可以掌握描述性编程的技能,更应该了解它的缺陷,不要盲目崇拜“编程”这两个字,开个玩笑的说:“描述性编程,不好惹!”
自动化测试的目的是使测试自动化起来,不是一种炫耀,本人也一再强调过:能做好自动化测试项目的自动化测试才是好的、成功的。所以,不到必不得已,请远离“描述性编程”!
在对象库编程和描述性编程的学习结束之际,也就意味着广大新人读者已经完全可以独立去写一些自动化测试脚本了,已经逐步开始有能力成为一名“QTP自动化测试工程师”,已经彻底摆脱了录制化的QTP,这是一个里程碑!
知识点巩固和举一反三练习
素材:
title = Browser("百度一下,你就知道").Page("百度一下,你就知道").Object.title Msgbox Browser("百度一下,你就知道").Page("百度一下,你就知道")._ WebButton("百度一下").GetROProperty("value") Browser("百度一下,你就知道").Page("百度一下,你就知道").Link("关于百度").Click |
一、使用基础方法描述素材中的代码。
二、使用Description.Create方法描述素材中的代码。
本文选自《51Testing软件测试作品系列》之九——《精通QTP——自动化测试技术领航》。
本站经人民邮电出版社和作者的授权,近期将进行部分章节的独家连载,敬请期待!
版权声明:51Testing软件测试网获人民邮电出版社和作者授权独家连载本书部分章节。
任何个人或单位未获得明确的书面许可,不得对本文内容复制、转载或进行镜像,否则将追究法律责任。
相关阅读: