2016-09-22 10 views
1

Итак, я пытаюсь получить fastlane screenshot, и это означает, что Xcode UITest работает ... Я создаю приложение Ionic, которое использует символ 3-бар в качестве кнопки выдвижения, и такая вещь тривиальна с помощью webapps.Доступ к кнопкам приложения в Xcode UITest без использования полезного текста для ссылок.

Однако, когда я использую uITest запись, она извращает кнопку и заканчивает тем, что представляя как этот

app.buttons[""].tap()

Когда пытается запустить сохраненные команды пользовательского интерфейса, он, очевидно, дроссели на это и роняет тест ... есть ли другой способ представить кнопку другой, а затем использовать ее текст ярлыка?

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

ответ

2

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

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

Оба этих свойства могут быть прочитаны XCUIElementQuery, что означает, что вы сможете использовать, например, app.buttons["slide_out"].tap().

Для этого вы устанавливаете свойство accessibilityIdentifier/accessibilityLabel явно в коде (например, button.accessibilityIdentifier = "slide_out") или в раскадровке (по свойствам, см. Снимок экрана).

Here is the Storyboard area in question

Если, с другой стороны, есть вопрос времени, потому что вы должны ждать, пока элемент появится в блоге, я рекомендую Джо Masilotti по поводу пользовательских хелперов в XCUITest: http://masilotti.com/xctest-helpers/

+0

спасибо за ваша подсказка и действительно полезная помощь ... – menriquez

+0

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

+1

Не ненавидите это говорить. Вместо этого ознакомьтесь со специальными помощниками XCUITest от Joe Masilotti: http://masilotti.com/xctest-helpers/ Он нашел действительно хорошее решение для введения задержек в тестовом скрипте. –