2016-09-28 6 views
0

В XCode 7.2, если я могу получить XCUIApplication(). ScrollViews ["Foo"]. OtherElements.otherElements ["Название страницы"], что можно сказать: «Дайте мне название страницы для этого scrollView с именем« Foo », ?»Как я могу получить метку для прокрутки в Xcode 7.2 XCTestCase?

Я пробовал просить доступностьLabel и staticTexts.

Я попытался добавить XCUIApplication(). ScrollViews ["Foo"], XCUIApplication(). ScrollViews ["Foo"]. OtherElements и т. Д. В мой список просмотра, но я не вижу никакой полезной информации.

Когда я делаю po на XCUIApplication().scrollViews["Foo"].otherElements, я получаю:

<snip> 
↪︎Find: Descendants matching type Other 
Output: { 
     Other 0x7f904b60e910: traits: 8589934592, {{0.0, 0.0}, {768.0, 1024.0}}, label: 'PDF article' 
     Other 0x7f9049efb6e0: traits: 8589934592, {{0.0, 0.0}, {768.0, 1024.0}} 
    } 

(заголовок страницы в данном случае является «PDF статью»)

Так что я чувствую, что я должен быть в состоянии получить доступ к нему с staticTexts как минимум.

ответ

0

Похоже, что ваш заголовок страницы - это пользовательский вид, который не наследуется от UILabel (потомки UILabel отмечены как StaticTexts).

Вам необходимо установить идентификатор (не на этикетке) на ваш заголовок страницы в коде приложения.

pageTitle.accessibilityIdentifier = "Page Title" 

Это должно сделать ваш код работать и будет наилучшей практикой.

В качестве альтернативы, если вы измените цепочку поиска, чтобы использовать значение метки вместо "Page Title", это тоже должно работать. Однако, если вы открываете другую страницу с другим заголовком, это не сработает.

XCUIApplication().scrollViews["Foo"].otherElements["PDF article"]