51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1954|回复: 4
打印 上一主题 下一主题

[原创] qtp如何简易根据运行结果返回结果

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2008-5-16 15:49:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Exist1= Browser("1").Page("1").WebElement("1").Exist
Exist2= Browser("2").Page("2").WebElement("2").Exist
...............
...............
Exist1= Browser("n").Page("n").WebElement("n").Exist
If Exist1=1 and Exist2=1 and Exist3=1 and Exist4=1 and ...and Existn=1 then
   Reporter.ReportEvent 1, "Check Fail", "The check  failed."
   exitaction(1)
else
   Reporter.ReportEvent 0, "Check Succ", "The check  OK."
   exitaction(0)
End If
当有很多个检查点的时候,IF 条件写起来就会很麻烦,有没有方法可以根据脚本运行的结果判断,只要有一个是error的,就返回 exitaction(1),而不需向我上面一样,这么麻烦的写很多条件来限制(Exist1=1 and Exist2=1 and Exist3=1 and Exist4=1 and ...and Existn=1 )
请假好的方法

End If
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

  • TA的每日心情
    开心
    2016-2-27 08:48
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]测试小兵

    2#
    发表于 2008-5-16 23:49:01 | 只看该作者
    1, 建议你使用 数组来 存放返回结果;
    2,根据 Exist1= Browser("1").Page("1").WebElement("1").Exist。那么 Exist1的值要么是 True ,要么是 False。你写的语句是  Exist1=1 ,这样有没有问题? 值得怀疑。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-2-27 08:48
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]测试小兵

    3#
    发表于 2008-5-16 23:55:35 | 只看该作者
    如果 纯粹是为了代码书写方便,那么你 可以这样处理:
    1,按照如下方法定义数组的每个元素的值:如果  对象存在,那么值为0,否则 就为1;
    2, 计算数组的所有元素的和。如果和为0,那么说明所有的对象都存在;否则,就说明至少有一个对象不存在。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-2-27 08:48
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]测试小兵

    4#
    发表于 2008-5-16 23:58:18 | 只看该作者
    只是个人感觉这样得不偿失,因为这样会降低了程序的可读性,另外可能会在执行速度上比原来慢。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5#
    发表于 2008-5-17 19:09:09 | 只看该作者

    回复 1# 的帖子

    换一下思路,自己写个函数,把exist封装一下,很容易实现你的目的

    Sub myCheckExist (obj, iSeconds)
        If obj.exist(iSeconds) then
           Reporter.ReportEvent 1, "Check Fail", "The check  failed."
           exitaction(1)
        else
           Reporter.ReportEvent 0, "Check Succ", "The check  OK."
        End If
    End Sub

    然后,对每个对象直接调用该函数就可以了

    myCheckExist Browser("1").Page("1").WebElement("1"), 10
    ...
    myCheckExist Browser("n").Page("n").WebElement("n"), 10

    对于满足某一条件就退出action,函数已经实现。当都不满足退出条件,直接检查下一个对象,完成所有检查后根据需要调用exitaction

    [ 本帖最后由 gy21st 于 2008-5-19 09:19 编辑 ]
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-15 09:06 , Processed in 0.073948 second(s), 27 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表