Appium завершает работу против закрытия

В Appium, в чем техническая разница между методами driver.terminate_app(bundleId) и driver.close_app()?


person simpleuser    schedule 21.10.2019    source источник


Ответы (1)


driver.terminate_app(bundleId)->

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

Поддерживаемые аргументы

bundleId: идентификатор пакета приложения, которое будет закрыто. Обязательный аргумент.

Где driver.close_app() фактически используется для завершения сеанса драйвера с приложением. В основном это написано в методе @AfterTest, что означает, что после выполнения всех ваших тестов экземпляр драйвера должен быть безопасно закрыт.

См. приведенный ниже код для driver.close()

public class Github1298Test {
  @BeforeMethod
  public void setUp() {
    //initiate your driver instance 
   //give all capabilities 

  }

 @Test
 public void tearDown() {
    driver.close_app();
 }

}

person Sammar Ahmad    schedule 22.10.2019
comment
Немного поигравшись, я заметил, что driver.close_app() закрывает связь сеанса и соединение с драйвером, НО оставляет сеанс активным в Appium (до тех пор, пока возможность newCommentTimeout не заставит Appium завершить его?) и не закрывает приложение, если оно запущено или работает в фоновом режиме. устройство, а driver.quit() завершит сеанс Appium и закроет приложение, если оно запущено на устройстве. - person simpleuser; 22.10.2019