Как выполнить несколько тестовых сценариев appium один за другим?

Я пытался выполнить созданный мной набор тестов appium, который состоит из нескольких тестовых файлов в наборе.

Может кто-нибудь помочь, я не могу выполнить второй тестовый скрипт после выполнения первого скрипта. Он перезапускает приложение и запускается заново. Мне нужно начать с того места, где он остановился в первом сценарии.

Я пробовал установить флаг session-override, а также launch_app().


person Karuna Lingham    schedule 17.05.2017    source источник
comment
Всякий раз, когда вы начинаете новый сеанс с Appium, он перезапускает ваше приложение. Мое предложение состоит в том, чтобы повторно использовать экземпляр сеанса в ваших тестовых примерах вместо того, чтобы каждый раз создавать новый.   -  person mandelbaum    schedule 18.05.2017
comment
@mandelbaum Спасибо за ваш ответ. Да. Любые предложения о том, как повторно использовать один и тот же экземпляр сеанса, не запуская новый?   -  person Karuna Lingham    schedule 18.05.2017
comment
Вы можете создать сеанс глобально, а затем ваши тесты импортируют этот сеанс.   -  person mandelbaum    schedule 18.05.2017
comment
Я использую подход, при котором я запускаю сеанс только один раз в начале выполнения, используя @BeforeClass. Используя этот подход, все мои тесты используют один и тот же сеанс.   -  person Anish Pillai    schedule 19.05.2017
comment
@mandelbaum Как создать глобальный сеанс appium и импортировать этот сеанс?   -  person Karuna Lingham    schedule 24.05.2017
comment
@AnishPillai Любые предложения, как я могу реализовать это с помощью привязок Python?   -  person Karuna Lingham    schedule 24.05.2017
comment
@KarunaLingham, мне жаль, что я не работал над Python. Но основная логика будет такой: какой бы ни была ваша отправная точка, вы можете определить драйвер уже там. Затем с помощью концепции наследования Java вы можете передать эту ссылку на драйвер всем другим классам, и таким образом все классы смогут использовать один и тот же сеанс.   -  person Anish Pillai    schedule 25.05.2017


Ответы (2)


Если вы используете параметр полного сброса как false в желаемых возможностях, приложение не будет запускаться каждый раз заново. Я использовал следующее в своих желаемых возможностях.

Возможности.setCapability("fullReset", false);

Если вы используете графический интерфейс appium 1.5.3, установите флажок «Без сброса» в настройках iOS/Android.

person Padma    schedule 23.05.2017
comment
Спасибо за Ваш ответ. Но у меня это не сработало, когда я добавил вышеупомянутую возможность в каждый тестовый скрипт. Все равно сбрасывает приложение и начинает заново. Однако, когда я установил флажок «без сброса» в графическом интерфейсе, весь набор тестов переходит в режим без сброса, тогда как мне нужно, чтобы первый тестовый сценарий запускался с полным сбросом, а следующие сценарии — без сброса. - person Karuna Lingham; 24.05.2017
comment
Это не работало с 'fullReset': 'false', но вместо этого работало с 'noReset': 'true' :D В любом случае спасибо за вашу помощь! - person Karuna Lingham; 30.05.2017

Вам необходимо добавить вышеуказанную возможность в основной метод, где вы упомянули другие возможности, такие как имя устройства, путь к приложению и т. д., чтобы основной метод сначала установил приложение на ваше устройство и начал выполнять первый метод тестирования, после чего другими методами тестирования в наборе без сброса. Я использую это в своей автоматизации как в iOS, так и в Android. Удалите приложение, если вы уже это сделали, перед запуском теста на тестовом устройстве.

person Padma    schedule 25.05.2017