Appium 2.0 uiautomator2 에서 세션종료시 앱 종료하기
기존 Appium 1.x대에서는 terminate_app() 을 사용했었지만,
Appium 2.x 에서는 해당 동작이 수행되지 않아 다른 방법이 필요했습니다.
자료를 찾다보니 2023년 4월에 해당 기능이 업데이트 되었었네요!
GitHub - appium/appium-uiautomator2-driver: Appium driver for Android UIAutomator2
Appium driver for Android UIAutomator2. Contribute to appium/appium-uiautomator2-driver development by creating an account on GitHub.
github.com
uiautomator2 드라이버 버전이 2.15 이상이시라면 사용 하실 수 있습니다.
일단 Android쪽만 확인하기는 했는데 이후에 XCUITest쪽도 유사기능이 있는지 찾아봐야겠습니다.
사용법은 Android Cap 설정하실 때 해당 부분을 설정해서 사용하시면 됩니다.
appium:noReset = True
일 때를 전제로 합니다.
appium:dontStopAppOnReset = True
- 이미 실행중인 앱이 있다면 세션이 종료되어도 앱을 종료하지 않고 그대로 사용합니다. (기본은 False)
- appium:noReset = False 일 경우라면 앱이 재 실행됩니다.
appium:forceAppLaunch = True
- 이미 실행중인 앱이 있어도 앱을 종료하고 새로 실행합니다. 세션이 종료되면 앱을 종료합니다 (기본은 False)
appium:shouldTerminateApp = True
- 이미 실행중인 앱이 있으면 해당 앱을 사용하지만 세션이 종료될 경우 앱을 종료합니다. (기본은 False)
상황에 맞게 사용할 수 있도록 세분화 되어있으니 좋은 것 같습니다 :)