Как определить идентификатор доступности кнопки вкладки React Native Navigation?

Я пытаюсь определить, почему один из моих тестов (с использованием appium для управления приложением React Native на симуляторе iOS) не может найти одну из вкладок React Native Navigation в нашем приложении по значению, указанному как его testID. В тесте используется elementByAccessibilityId, и, похоже, он терпит неудачу только тогда, когда симулятор работает под управлением iOS 10.0, а не на 10.2 и 10.3. Я хочу убедиться, что accessibilityIdentifier имеет был установлен из testID правильно, но (а) кнопки не отображаются в Инспектор инструментов разработчика React; и (b) ни инспектор специальных возможностей, который поставляется с XCode 8.3.3, ни тот, который поставляется с 9.1, похоже, не отображает это поле (хотя, по-видимому, инструменты для 9.1b2 сделали).

Ответ, на который я надеюсь, таков:

  • Как убедиться, что на кнопках вкладки «Навигация» установлено правильное значение accessibilityIdentifier, чтобы я мог продолжить расследование, почему appium не может найти кнопку?
  • или же; Кто-нибудь знает, почему appium может найти вкладку под 10.2 и 10.3, но НЕ под 10.0? Я не нашел ничего с помощью веб-поиска, указывающего на некоторые изменения в API специальных возможностей в 10.0 -> 10.2.

Кроме того, если я лаю не на то дерево или пропускаю что-то совершенно отдельное, помощь приветствуется.


person Matt    schedule 31.10.2017    source источник


Ответы (1)


Я обнаружил, что наша команда использует форк React Native Navigation, из-за чего мне сложно определить, является ли это ошибкой в ​​самой RNN или она была введена в наш форк. До сих пор неясно, какова основная причина или почему это будет зависеть от платформы.

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

person Matt    schedule 01.11.2017