Как написать кейс Xamarin.UITest для кнопки «Назад» на Android - PullRequest
0 голосов
/ 28 января 2020

Я пишу кейсы UITest для моего проекта форм Xamarin. Теперь я застрял в части навигации. Я знаю, что с помощью "app.Back ()" мы можем вернуться назад, но в нашем Project Hardware Back кнопка отключена. Есть ли способ использовать панель навигации «Кнопка назад»?

Я пытался получить элементы на странице, используя следующий код "AppResult [] results = app.Query ();" но все же я не могу найти ни одного элемента, который говорит barbackbutton или backbutton et c в списке.

1 Ответ

1 голос
/ 31 января 2020

Бхарат, прочитав это пару раз, я думаю, что вы спрашиваете: «Как мне найти идентификаторы / элементы автоматизации для цели».

Есть несколько способов сделать это. Мой любимый - App.Repl(). Вот документы Microsoft на нем , но вкратце:

  • в точке вашего теста, где вы находитесь в представлении приложения, в котором вы хотите найти элемент, введите App.Repl()
        [Test]
        public void CanTapButton()
        {
            App.Repl();
        }

Запустите тест. Когда тест достигнет этой точки, откроется окно repl, и тест будет приостановлен. Завершите тест, если хотите, но сохраните командное окно. Это будет выглядеть так: screenshot of ios command prompt open to xamarin ui test repl

Введите в командной строке tree, чтобы увидеть полный макет страницы, видимой на устройстве. Repl Tree on ios

Вы можете использовать вызовы запросов приложения в окне Repl для составления запросов. Например,

app.Query(x => x.Marked("cpgTitle"));

вернет элемент cpgTitle, который вы видите в дереве. Затем вы можете использовать этот запрос приложения для взаимодействия с элементом, используя что-то вроде App.Tap(appQueryVariable).

Документы AppQueries имеют значение здесь , и в целом он очень похож на селектор в стиле селена.

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