Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/414.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/43.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在iOS uiautomation中使用两个按钮处理警报_Javascript_Iphone_Ipad_Ios Ui Automation - Fatal编程技术网

Javascript 如何在iOS uiautomation中使用两个按钮处理警报

Javascript 如何在iOS uiautomation中使用两个按钮处理警报,javascript,iphone,ipad,ios-ui-automation,Javascript,Iphone,Ipad,Ios Ui Automation,我正在尝试从应用程序注销。当我单击“注销”->时,它会给我一个警报框,该框有两个按钮“是”和“取消”,但我无法单击“是”按钮。我尝试了以下代码: var log_out = mainWindow.popover().tableViews()[0].cells()["Log out of App"]; log_out.tap(); UIATarget.onAlert = function onAlert(alert){ var name = al

我正在尝试从应用程序注销。当我单击“注销”->时,它会给我一个警报框,该框有两个按钮“是”和“取消”,但我无法单击“是”按钮。我尝试了以下代码:

    var log_out = mainWindow.popover().tableViews()[0].cells()["Log out of App"];
    log_out.tap();

    UIATarget.onAlert = function onAlert(alert){   
          var name = alert.name();
          UIALogger.logMessage("alert "+name+" encountered");
          if(name == "App") 
          {
              alert.buttons()["Yes"].tap();
              return true;
          } else {
              return false;
          }
      }
但代码甚至没有进入警报函数内部,因为它没有打印任何消息“遇到警报应用”。点击“退出应用程序”按钮后,脚本结束。我已经浏览了这些链接,并且
但似乎不起作用,因为它无法进入内部警报,因为它没有通过logMessage打印任何消息,所以也无法使用坐标方法。

您可以尝试在之前定义onAlert事件

UIATarget.onAlert=函数onAlert(警报){/code/}


注销。点击()

您可以尝试在之前定义onAlert事件

UIATarget.onAlert=函数onAlert(警报){/code/}


注销。点击()

根据您在跟踪日志中从未看到该日志消息的证据,听起来您的警报处理程序根本没有被调用。你什么时候试着测试这个?是在整个测试脚本的最后吗?如果是这样,您需要在其中放置一个手动
目标。延迟(5)
,因为自动脚本引擎将在屏幕上完全形成警报之前结束,并且永远不会调用警报回调。在脚本完成之前暂停片刻,脚本引擎将有时间通知该警报并给您回电话。根据您在跟踪日志中从未看到该日志消息的证据,听起来您的警报处理程序根本没有被调用。你什么时候试着测试这个?是在整个测试脚本的最后吗?如果是这样,您需要在其中放置一个手动
目标。延迟(5)
,因为自动脚本引擎将在屏幕上完全形成警报之前结束,并且永远不会调用警报回调。在脚本完成之前暂停片刻,脚本引擎将有时间通知警报并给您回电话。