2014-8-5 23:22| 发布者: tianzc| 查看: 426| 评论: 0
一提到自动化测试工具,给人印象最深的就是录制和回放了。录制测试人员的操作过程,再回放出来并多次运行,达到使用机器代替人来执行测试的效果。 QTP采用的关键字驱动与专家视图的设计思想,不但可以自动生成代码,使初学者快速入门,更为高级测试人员提供了便利的编程界面,使其可以高效的完成自动化测试脚本,不用完全依赖于录制和回放过程。 下面就我个人的使用经验,简单谈谈如何不依赖于录制和回放来完成QTP脚本的。 操作步骤很简点,主要分为三步: 举个简单的例子。 以在51testing的网站上搜索关键字QTP为例。 首先,打开QTP,点击工具栏上的Object Repository按钮,打开对象库维护界面。如图一(图片暂时上传不了)
然后,在专家视图中,手动输入如下代码: 由于录制的过程中,待测试的页面是已经打开的,所以为了保证这个测试的前提条件,在前面添加打开IE的语句。 这样,使用QTP的自动化测试脚本就完成了,运行看看是否通过?结果是一次性通过,而且没有其他需要修改的地方了。 还可以在此基础上增加关闭所有IE的函数,增加验证点等等使脚本更加健壮和完整,这里就不赘述了。
如果使用录制和回放的方法来开发脚本,可能存在以下几个问题: 一个是自动生成的代码有一些是没有用的,有时候反而会影响代码的质量; 一个是通过录制生成的代码,健壮性都不好,如果要使脚本在无人值守的情况下顺畅地运行,还是需要手动修改的。比如在对象找不到的地方增加判断对象是否存在,再继续下一步操作等等; 再有,就是录制的过程中,会使你的对象库中多出来一些脚本正常运行以外的多余的对象,给维护对象库也增加了工作量。 比较这两种方法,总体感觉直接添加对象并编写代码的方式,可以弥补录制回放过程的不足,节省了脚本的开发时间,减少了对象库的维护工作量,大大提高了自动化测试脚本的开发效率。 当然,能够这样做是有前提的。 补充一点,使用这种方法,你的对象库的设计一定要到位,保证在写代码的时候,很容易的找到你要操作的对象,否则就得不偿失了。 |