Is there a way Open and Close the app under test?

Language: Python

I’m trying to create a test that involves checking a prompt appears after the app has been launched a second time.

Naturally this means using self.driver.launch_app isn’t going to work here as that seems to reinstall the whole thing and clear the apps data.

Any suggestions are appreciated

there is no problem with “driver.launchApp();” for us. looks like problem in your capabilities when you start test. we use above with normal app start. our start cases are -> Different capabilities for different scenarios

Thanks for the response @Aleksei . I followed your “normal start” code by setting fullReset to true and noReset to false but it still reinstalls once launch_app is called… This is probably something that just won’t work on iOS.

For reference here’s all my other caps after setting the reset capabilities in code

{‘webStorageEnabled’: False, ‘locationContextEnabled’: False, ‘browserName’: ‘’, ‘platform’: ‘MAC’, ‘javascriptEnabled’: True, ‘databaseEnabled’: False, ‘takesScreenshot’: True, ‘networkConnectionEnabled’: False, ‘platformName’: ‘iOS’, ‘platformVersion’: ‘14.3’, ‘deviceName’: ‘iPhone 11 Pro Max’, ‘app’: ‘.app’, ‘newCommandTimeout’: 9999, ‘autoGrantPermissions’: ‘false’, ‘udid’: '**’, ‘fullReset’: False, ‘noReset’: True}

no problem with us. ios 14.2. leaving our caps in case (deleted company sensitive info):

{
  app: REMOVED,
  automationName: XCuiTest,
  bundleId: REMOVED,
  clearSystemFiles: true,
  derivedDataPath: REMOVED,
  deviceName: iPhoneQA10,
  fullContextList: true,
  fullReset: false,
  iosInstallPause: 500,
  mjpegServerPort: 6210,
  nativeWebTap: true,
  newCommandTimeout: 180,
  noReset: true,
  platformName: iOS,
  platformVersion: 14.1,
  processArguments: {
    "args": ["REMOVED"]
  },
  sendKeyStrategy: grouped,
  shouldUseSingletonTestManager: false,
  showXcodeLog: false,
  skipDeviceInitialization: true,
  skipServerInstallation: true,
  udid: REMOVED
  useJSONSource: true,
  useNewWDA: false,
  usePrebuiltWDA: true,
  waitForQuiescence: false,
  wdaLaunchTimeout: 120000,
  wdaLocalPort: 6110,
  wdaStartupRetries: 4,
  xcodeOrgId: REMOVED,
  xcodeSigningId: iPhone Developer
 }

Interesting as I’m using 14.3. I managed to get it working by using activateApp at the very least.

        self._driver.terminate_app('com.myApp.development')
        self._driver.activate_app('com.myApp.development')

we used same before but now works “launch” for us.