Не могу ответить на родную iOS подтверждаю Detox - приложение мокко в React native - PullRequest
0 голосов
/ 03 июля 2019

Я только что начал использовать Detox для тестирования своего собственного собственного приложения, и у меня возникли проблемы с ответом на собственное подтверждение.

Я не нашел список _UI ...... View (например: _UIAlertControllerActionView, _UINavigationBarBackIndicatorView)

it('should show world screen after tap', async () => {

    await loginPage.getFbBtn().tap();    
    // await element(by.type('_UINavigationBarBackIndicatorView')).tap(); 
    //await element(by.text('Continue')).tap();
    await element(by.text('Continue').and(by.type('_UIAlertControllerActionView'))).tap();
  });

элемент (by.type ('_ UINavigationBarBackIndicatorView')). Tap ();

(узел: 2009) UnhandledPromiseRejectionWarning: Ошибка: не удается найти элемент пользовательского интерфейса.Исключение с действием: {"Имя действия": "Tap", "Сопоставление элементов": "((! (KindOfClass ('RCTScrollView')) && kindOfClass ('(null)')) || (((kindOfClass ('UIView)') || respdsToSelector (accessibilityContainer)) && parentThatMatches (kindOfClass (' RCTScrollView '))) && ((kindOfClass (' UIView ') || respdsToSelector (accessibilityContainer)) && parentThatMatches (kindOfClass (' )ll) null)) "," Рекомендация по восстановлению ":" Проверьте, существует ли элемент в иерархии пользовательского интерфейса, напечатанной ниже. Если он существует, настройте сопоставление так, чтобы оно точно соответствовало элементу. "}

Трассировка ошибки: [{"Description": "Невозможно продолжить взаимодействие, поскольку не найден нужный элемент.", "Домен ошибки": "com.google.earlgrey.ElementInteractionErrorDomain", "Код ошибки":"0", "Имя файла": "GREYElementInteraction.m", "Имя функции": "- [GREYElementInteraction matchedElementsWithTimeout: error:]", "Строка": "124"}]

элемент ожидания (от.text ('Продолжить')). tap ();

Ошибка: не удается найти элемент пользовательского интерфейса.Исключение с действием: {"Имя действия": "Tap", "Сопоставление элементов": "((! (KindOfClass ('RCTScrollView')) && (((kindOfClass ('UILabel') || kindOfClass ('UITextField') || kindOfClass ('UITextView')) && hasText ('Continue')) || (kindOfClass ('RCTTextView') && объект с accessibilityLabel "Continue"))) || (((kindOfClass ('UIView') || RespondsToSelector)(accessibilityContainer)) && parentThatMatches (kindOfClass ('RCTScrollView'))) && ((kindOfClass ('UIView') || RespondsToSelector (accessibilityContainer)) && parentThatMatches ((((kindOfClass ('UILabel') (u '' UITEC)) || kindOfClass ('UITextView')) && hasText ('Continue')) || (kindOfClass ('RCTTextView') && объект с accessibilityLabel "Continue")))))) "," Предложение восстановления ":" Проверитьесли элемент существует в иерархии пользовательского интерфейса, напечатанной ниже. Если он существует, настройте сопоставление так, чтобы оно точно соответствовало элементу. "} enter image description here

элемент await (by.text ('Continue'). И (by.type ('_ UIAlertControllerActionView'))). Tap ();Ошибка: не удается найти элемент пользовательского интерфейса.

1 Ответ

0 голосов
/ 03 июля 2019

Это не предупреждение, с которым вы можете взаимодействовать. Это оповещение создается другим процессом, чем ваше приложение, и Detox не может с ним взаимодействовать. Вместо этого вы должны высмеивать API, который показывает это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...