【问题标题】:How to handle alert in UI Automation using javascript?如何使用 javascript 处理 UI 自动化中的警报?
【发布时间】:2012-03-29 09:20:56
【问题描述】:

在我的应用程序中点击一个按钮后它会发出警报。警报窗口上有两个按钮:1.取消 2.确定 我尝试使用论坛上给出的解决方案点击确定,但它不起作用。

UIATarget.onAlert = function onAlert(alert) {
  var title = alert.name();
  UIALogger.logWarning("Alert with title '" + title + "' encountered!");

   if (title == "Attention") 
   { 
    alert.buttons()["OK"].tap();

    return true; // bypass default handler 
   }
  return false; // use default handler 
}

没有调用处理警报的函数。有人可以帮我解决这个问题吗? 提前致谢。

【问题讨论】:

    标签: javascript ios ui-automation


    【解决方案1】:
    UIATarget.onAlert = function onAlert(alert) 
    {
    
        UIATarget.localTarget().delay(1); 
    
        UIALogger.logMessage("alertShown");
        target.captureScreenWithName("AlertCaptured");
        return true;
    }
    
    app.alert().buttons()["OK"].tap();
    

    【讨论】:

    • 请尝试提供解释,而不仅仅是一个代码示例。 :-)
    【解决方案2】:

    我对这个问题的解决方案是在处理警报的函数之后添加一秒钟的延迟。你不能用那个函数结束你的脚本。

    UIATarget.onAlert = function onAlert(alert) {
    
        var title = alert.name();
    
        UIALogger.logWarning("Alert with title '" + title + "' encountered.");
    
        if (title == "Are you sure you want to delete this?") {
    
            alert.buttons()["Delete"].tap();
    
            return true;  //alert handled, so bypass the default handler
        }
        return false;
    }
    target.delay(1);  
    

    【讨论】:

      猜你喜欢
      • 2020-10-03
      • 2016-04-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-18
      • 1970-01-01
      • 1970-01-01
      • 2014-08-29
      相关资源
      最近更新 更多