2015-05-27 2 views
0

Это 3d Посмотреть UIHieracrchy выглядит следующим образомНевозможно автоматизировать "нажмите на кнопку OK" с UIAutomation

APP -> UIWindow -> UILayoutContainerView -> UINavigationTransitionView -> UIViewControllerWrapperView->UIView->UIButton 

(UIButton подробно)

UIButton -> UIImageView -> MyButton ->UIButtonLabel 

поэтому я попытался следующий

  1. UIATarget.onAlert = function onAlert(alert) 
    { 
        var title = alert.name(); 
        if(title == "Failed" || title == "Warning") 
        { 
         target.delay(5); 
         alert.buttons()["OK"].tap(); 
         return true; 
        } 
        UIALogger.logPass("Sign In Failed"); 
        return false; 
    } 
    
    1. target.frontMostApp().mainWindow().buttons()["OK"].tap();

    2. target.frontMostApp().mainWindow().buttons()[0].tap();

    Пожалуйста, помогите мне решить эту проблему автоматизации на эту кнопку.

+0

Можете ли вы разместить больше кода, который вы используете, в частности код, который доставит вас из 'UIALogger.logStart' в обработчик предупреждений? – Ian

ответ

0

Похоже, вы закомментировал строку, где вы на самом деле распускать предупреждение:

//alert.buttons()["OK"].tap(); 

Это означает, что кнопка не может быть достигнуто UIAutomation - предупреждение по-прежнему блокирует его.

В некоторых случаях также появляется ошибка, при которой всплывающее окно с предупреждением изменяет значение target, и вы должны его повторно инициализировать.

+0

Извините, что я плохой, хотя я пробовал без комментариев при задании вопроса, я прокомментировал это, поэтому я отредактировал вопрос, пожалуйста, посмотрите и спасибо :) –

+0

Я предполагаю, что вы вводите в заблуждение функцию 'onAlert' (которая обрабатывает только Всплывающие окна на уровне ОС, такие как те, которые запрашивают разрешение на использование этого местоположения) со своим собственным всплывающим окном (на которое ссылается 'target.frontMostApp(). MainWindow(). Buttons() [" OK "]. Tap();') , Трудно точно знать, основываясь на ограниченном коде, который вы опубликовали в своем вопросе. – Ian

Смежные вопросы