【问题标题】:UFT VB Script ( If Statement OR and AND )UFT VB 脚本(If 语句 OR 和 AND)
【发布时间】:2017-06-28 02:09:38
【问题描述】:

我是 QA 工程师,不熟悉 UFT 和 vb 脚本。我正在比较多个条件,当 UFT 到达以 (if 语句) 开头的第 269 行代码时,它会不断出错。这就像它无法读取多个条件语句。我的代码在没有AND 条件的情况下工作,但我希望它与AND 条件一起工作。我的代码如下。不幸的是,组织仍然使用 vb 脚本进行自动化测试。

Set PayDate_Calendar = Browser("ADP_2").Page("ADP_10_Calendar").WebEdit("PayDate_Calendar") 
Set PayRoll_Calendar = Browser("ADP_2").Page("ADP_10_Calendar").WebEdit("PayRoll_Calendar") 
Set Payroll_Out_Calendar = Browser("ADP_2").Page("ADP_10_Calendar").WebEdit("Payroll_Out_Calendar")
Set PayPeriodStart_Calandar = Browser("ADP_2").Page("ADP_10_Calendar").WebEdit("PayPeriodStart_Calandar")

    '------- PayDate_Calendar--------
If dayName = dayOne Or dayName = dayTwo Or dayName = dayThree Or dayName = dayFour  AND  PayDate_Calendar = "" Then
    Setting.WebPackage("ReplayType") = 2
    PayDate_Calendar.Click
    'Browser("ADP_2").Page("ADP_10_Calendar").WebEdit("PayDate_Calendar").Click
    Call EnterDataInField(Browser("ADP_2").Page("ADP_10_Calendar").WebEdit("PayDate_Calendar")," ")
    Call EnterDataInField(Browser("ADP_2").Page("ADP_10_Calendar").WebEdit("PayDate_Calendar"),(FormatDateTime(dayPlus,2)))

【问题讨论】:

  • 那不是 VB.NET 代码

标签: vbscript hp-uft


【解决方案1】:

AND are execute before OR。如果需要,请放置 ()。

If (dayName = dayOne Or dayName = dayTwo Or dayName = dayThree Or dayName = dayFour)  AND  PayDate_Calendar = "" Then

【讨论】:

  • 当我这样做时,我在 UFT 中收到一条错误消息,指出对象不支持此属性或方法
  • 通过查看您的代码,PayDate_Calendar 是“WebEdit”类型的对象。你不会像那样获取价值。使用这个... (PayDate_Calendar).GetRoProperty("Value") = "" 另外,不确定使用的其他变量是否为字符串类型。例如dayName /dayOne ...
  • 好的,我会试试的,现在我会告诉你的。
猜你喜欢
  • 1970-01-01
  • 2010-12-20
  • 2012-02-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-02-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多