学习QTP遇到问题及解决方法

上一篇 / 下一篇  2013-02-28 14:35:52 / 个人分类:QTP自动化测试

   昨天学习qtp,用qtp录制了QTP自带的Flight程序的登录-预定-查询订单并验证订单是否正确,设置了3个参数,每个参数在DataTable中有3行数据。录制完脚本后,进行修改,回放。在此过程中遇见了以下问题:
    1.在添加action时,直接添加到了前一个action后面造成脚本调试的时候比较困难。
解决方法:以后在开发脚本的时候需要把脚本分开,通过程序来进行调用
    2.在回放脚本时,脚本只运行了datatable中的一行就报错,提示找不到login的对象
解决方法:是因为自己通过run来运行,并且在程序最后关掉了窗口,而qtp只能在最开始的自动启动程序,所以需要在程序中用自动启动程序的函数来启动程序Systemutil.Run "F:\Program Files\HP\QuickTest Professional\samples\flight\app\flight4a.exe"
    3.加入自动启动程序的函数后,脚本还是只运行了datatable中的一行就报错,提示找不到login的对象
解决办法:分析脚本运行的业务逻辑,注释掉了关掉页面的语句,添加了页面判断语句判断页面是否激活If not Window("Flight Reservation").Exist(3)  Then
    4.加入页面判断语句后还是只能运行datatable中的一行数据
解决办法:查看seting-run是否设置为run all rows,更改调用Runaction actiong booking时的参数为alliteration或1
    5.更改后页面运行一行后自动结束不报错,还是没有运行其他行的参数
解决办法:添加向下获取下一行的函数DataTable.SetNextRow,查看页面在验证完订单是否正确后,页面是有数据的导致脚本在调用下一行数据时识别不了对象,先把页面初始到new order页面
    6.在页面跳转比较慢时,需要用wait(n)来设置等待时间
    7.在查找解决办法时看到了一个有意思的判断来判断datatable中的数据是否为空Do While Date_of_Flight<> ""或if data_of_Flight<>"" Then

TAG:

 

评分:0

我来说两句

Open Toolbar