Автоматизация пользовательского интерфейса приложения iPhone с использованием фреймворка UIAutomation?

Привет, люди, у меня есть серьезная проблема, я взял контроллер панели навигации в своем приложении, и внутри этой панели у меня есть правая кнопка, код которой написан следующим образом:

    UIBarButtonItem *rightButton = [[UIBarButtonItem alloc] init];
    rightButton.action = @selector(loadLeaseView);
    rightButton.target = self;
    rightButton.title = @"Next";
    rightButton.style = UIButtonTypeDetailDisclosure;
    rightButton.isAccessibilityElement = YES;
    rightButton.accessibilityLabel = @"Next";

    self.navigationItem.leftBarButtonItem = nil;
    self.navigationItem.hidesBackButton = YES;
    self.navigationItem.rightBarButtonItem  = rightButton;
    [rightButton release];  

Я установил метку доступности для этой кнопки и флаги isAccessible, и я написал java-скрипт для проверки этого, который в основном открывает приложение и нажимает эту кнопку, чтобы мы могли перейти на следующую страницу в приложении, но проблема заключается в том, что скрипт не может нажать кнопку, написанный мной java-скрипт выглядит следующим образом:

UIALogger.logStart("Starting Test");
var target = UIATarget.localTarget().frontMostApp().mainWindow();
var navBar = target.navigationBar().navigationItem();

var button = navBar.rightButton();
button.tap();

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


person AnkitSablok    schedule 14.06.2012    source источник


Ответы (1)


Я не верю, что navigationItem — это функция в UIAutomation.

Я думаю, то, что вы ищете, больше похоже на…

var target = UIATarget.localTarget();
var app = target.app = target.frontMostApp();
var navBar = app.mainWindow().navigationBar();
var button = navBar.rightButton(); 
button.tap();
person 011    schedule 14.06.2012