Как автоматизировать тестовые элементы HTML5 в UIAWebView в Instrument?

Я пытаюсь автоматизировать тест мобильного приложения, которое HTML5 встроено в собственный фрейм приложения. Я использовал следующий код для получения элементов в Instrument

UIALogger.logStart("Log elements in the landing page");
UIATarget.localTarget().logElementTree();
UIALogger.logPass("done");

И он покажет компонент HTML5 как UIAWebView. Но, например, если в HTML есть ссылка, и я хочу нажать, я могу узнать ее только по позиции. Есть ли какой-либо метод, который я могу вызвать, чтобы получить теги в HTML5?

Большое спасибо!


person user1775322    schedule 13.03.2013    source источник
comment
проверьте это stackoverflow.com/questions/14760746/ ответ показывает точные шаги, которые необходимо предпринять.   -  person Nick Turner    schedule 14.10.2013


Ответы (1)


Такого ментода нет, вы получите элементы с target.logElementTree(); как и раньше. Если элементы являются собственными элементами, вы можете использовать их с предопределенными методами, такими как buttons() или links(), иначе вам придется использовать их, указав только положение (координаты xy). Эта проблема всегда существует с гибридными приложениями.

person San27    schedule 18.03.2013
comment
Спасибо за информацию. Как насчет программирования доступности элементов в Xcode? Это поможет? - person user1775322; 19.03.2013
comment
У меня мало знаний о программировании Xcode, но эта проблема не связана с доступностью элементов. Это связано с тем, что все элементы присутствуют в веб-представлении (содержимое HTML5). Следовательно, они не распознаются как нативные элементы (для которых мы можем использовать прямые/предопределенные методы, как я упоминал ранее). - person San27; 19.03.2013
comment
Спасибо Сандеш! Я думаю, вы правы. Изучив его некоторое время, я понял, что часть элементов HTML, таких как текстовые поля/ссылки/кнопки, были сопоставлены с нативными элементами iOS. В то время как другие, я думаю, таблицы остаются со статическим текстом. Однако они по-прежнему узнаваемы, если я использую имя staticText. Это своего рода замена для использования координат, но я думаю, что это немного более управляемо. - person user1775322; 26.03.2013