Всем добрый день, попался проект связанный с мобильным тестированием.
Опыта в мобилках почти нет.
Приложение - интернет магазин и для того чтобы начать пользоваться приложением надо залогинеться:
ввести логин
ввести пароль
OTP(код из смс)
Те эти шаги проходить постоянно, а тк это мобильное тестирование это долго, а тут еще и 100500 раз одни и теже шаги надо повторять.
Вообщем опрос, а можно ли как-нибудь скипать эти шаги? При веб тестировании можно договориться с разработчиками и они тебе спец url сделают, чтобы сразу попадать на какую хочешь страницу. Можно ли так с мобилками. Мне видится только один путь - простить разработчиков собирать билд с отключенной аутентификацией
Приложение на react native, тестирую на appium, pytest, python
я тоже новичек в тестирование и у меня тоже проект где ты регаешся и тд так вот я использую page object model и когда мне надо что-то зделать я просто вызываю Login Class а не делаю логин методы для всех тестов ( надеюсь я тебя правельно понел)
я тоже ищу ответ на подобный вопрос, но мне кажется “договориться” с разработчиками это неверный путь. Хотелось бы получить ответ от знающих людей, что такое фикстуры и можно ли реализовать нечто подобное с их помощью
Так вы разберитесь, как работает реальное приложение - наверняка оно не требует первого входа каждый; значит где-то хранит авторизационный токен или куки или ещё какой-то набор данных для идентификации пользователя
Для моего приложения необходим токен, его можно легко получить, но я не знаю как и куда его подсунуть. Он передается в desired capabilities?
Можно какой-нибудь пример?
Не удалять полностью приложение после теста и не удалять его данные
FullReset и noReset capablities вам в помощь, поизучайте что они делают.
Делать авторизацию через апи.
Тобишь не с телефона все клацать, а посредством взаимодействия с эндпоинтами.
Но это если уж совсем заморочиться нужно.
Изучайте капабилитис, если вы новичек, да и вообще там очень много полезных вещей, в особенности если вы только начинаете, и сталкиваетесь с, так сказать, детскими проблемами, они уже давно решены.
Спасибо большое, буду пробовать через capablities, но меня все-таки любопытство не оставляет.
Как можно подсунуть ключ в приложение. Если кто-нибудь знает как это можно реализовать - расскажите
как будто мы тут все тестировщики вашего приложения - вам путь прямой дорогой к разработчикам, узнавать как работает приложение и что ему нужно для работы
как пример, вы логинитесь и приложение сечет ваш udid, или какой-то другой параметр и сохраняет в базе данных что юзер такой-то, был залогинен таким-то девайсом, теперь каждый раз ( пока юзер не сделает лог аут) когда юзер будет открывать приложение на телефоне с таким то udid ему не будет показываться форма логина.
А вообще вопрос к разрабам, как аппка сечет кто залогинен, а кто еще нет.
Обычно (или, как минимум, часто) приложение “выбрасывает” логин страницу если 1) у него нет сессии 2) сессия заэкспарилась. Я делал так - логинился через АПИ и получал сессию. У аппиума есть возможность передать все что угодно приложению при старте. Пример здесь Home | KB
соответственно в приложение девелоперы добавили небольшой код - если приложение стартовало с уже переданной сессией, то она просто подкладывалась и все. Иначе - показ логин странички.
При веб тестировании можно договориться с разработчиками и они тебе спец url сделают, чтобы сразу попадать на какую хочешь страницу. Можно ли так с мобилками.
в теории - да, можно. Но на практике разработчики часто передают некие параметры с одного скрина/активити на следующий. Например, на скрине 1 получили некие данные с бэкэнда, затем юзер куда-то тапает и переходит на скрин 2, но там уже бэкэнд не участвует, а все данные передаются с прошлого скрина. Соответственно если вы стартанете скрин №2 из теста, то ничего хорошего не получится.