fullReset does not uninstall and re-install app on iOS device

With ‘fullReset’ set to ‘true’, appium server will install over the existing app on the iOS device, instead of uninstalling it and re-installing it.
I can still see old data on app after launch with ‘fullReset’ set to ‘true’
Appium version used: 1.3.3

Refer attached server logs for details.
info: --> POST /wd/hub/session {“desiredCapabilities”:{“appium-version”:“3.0”,“platformName”:“iOS”,“platformVersion”:“8.1”,“deviceName”:“iPad”,“app”:"/Users/rcastelino/Desktop/Project/QA/Automation/GIT/twigtale.zip",“name”:“Simu”,“fullReset”:true,“autoAcceptAlerts”:true,“videoRecording”:false,“udid”:“eb31339bcf670debc19f28cff19f152e8253bcc3”}}
info: Client User-Agent string: Ruby
info: [debug] The following desired capabilities were provided, but not recognized by appium. They will be passed on to any other services running on this server. : appium-version, name, videoRecording
info: [debug] Using local .zip from desired caps: /Users/rcastelino/Desktop/Project/QA/Automation/GIT/twigtale.zip
info: [debug] Copying local zip to tmp dir
info: [debug] /Users/rcastelino/Desktop/Project/QA/Automation/GIT/twigtale.zip copied to /var/folders/tg/x5dhcfyj59x9msfly2h8dnwc0000gp/T/114119-51883-152xfo0/appium-app.zip
info: [debug] Unzipping /var/folders/tg/x5dhcfyj59x9msfly2h8dnwc0000gp/T/114119-51883-152xfo0/appium-app.zip
info: [debug] Testing zip archive: /var/folders/tg/x5dhcfyj59x9msfly2h8dnwc0000gp/T/114119-51883-152xfo0/appium-app.zip
info: [debug] Zip archive tested clean
info: [debug] Unzip successful
info: [debug] Using locally extracted app: /var/folders/tg/x5dhcfyj59x9msfly2h8dnwc0000gp/T/114119-51883-152xfo0/twigtale.app
info: [debug] Creating new appium session e39a876a-0369-42c5-9853-391706f53e0d
info: [debug] Removing any remaining instruments sockets
info: [debug] Cleaned up instruments socket /tmp/instruments_sock
info: [debug] Setting Xcode folder
info: [debug] Setting Xcode version
info: [debug] Setting iOS SDK Version
info: [debug] Getting sdk version from xcrun with a timeout
info: [debug] iOS SDK Version set to 8.1
info: [debug] Not checking whether simulator is available since we’re on a real device
info: [debug] Detecting automation tracetemplate
info: [debug] Not auto-detecting udid, running on sim
info: [debug] Could not parse plist file (as binary) at /var/folders/tg/x5dhcfyj59x9msfly2h8dnwc0000gp/T/114119-51883-152xfo0/twigtale.app/en.lproj/Localizable.strings
info: Will try to parse the plist file as XML
parseFileSync() is deprecated. Use parseStringSync() instead.
info: [debug] Could not parse plist file (as XML) at /var/folders/tg/x5dhcfyj59x9msfly2h8dnwc0000gp/T/114119-51883-152xfo0/twigtale.app/en.lproj/Localizable.strings
warn: Could not parse app Localizable.strings; assuming it doesn’t exist
info: [debug] Getting bundle ID from app
info: [debug] Parsed app Info.plist (as binary)
info: [debug] Creating instruments
info: On some xcode 6 platforms, instruments-without-delay does not work. If you experience this, you will need to re-run appium with the --native-instruments-lib flag
info: [debug] Preparing uiauto bootstrap
info: [debug] Dynamic bootstrap dir: /Users/rcastelino/Library/Application Support/appium/bootstrap
info: [debug] Dynamic env: {“nodePath”:"/usr/local/Cellar/node/0.10.30/bin/node",“commandProxyClientPath”:"/usr/local/avm/versions/1.3.1/node_modules/appium/node_modules/appium-uiauto/bin/command-proxy-client.js",“instrumentsSock”:"/tmp/instruments_sock",“interKeyDelay”:null,“justLoopInfinitely”:false,“autoAcceptAlerts”:true}
…o: [debug] Dynamic bootstrap code: // This file is automatically generated. Do not manually modify!
info: [debug] Dynamic bootstrap path: /Users/rcastelino/Library/Application Support/appium/bootstrap/bootstrap-0a54548be21e71c1.js
info: [debug] Reusing dynamic bootstrap: /Users/rcastelino/Library/Application Support/appium/bootstrap/bootstrap-0a54548be21e71c1.js
info: [debug] Getting device string from opts: {“forceIphone”:false,“forceIpad”:false,“xcodeVersion”:“6.1”,“iOSSDKVersion”:“8.1”,“deviceName”:“iPad”,“platformVersion”:“8.1”}
info: [debug] fixDevice is on
info: [debug] Final device string is: ‘iPad (8.1 Simulator)’
info: [debug] Not setting device type since we’re on a real device
info: [debug] Checking whether we need to set app preferences
info: [debug] Not setting iOS and app preferences since we’re on a real device
info: [debug] Running ios sim reset flow
info: [debug] Killing the simulator process
info: [debug] Killall iOS Simulator
info: [debug] Killing any other simulator daemons
info: [debug] On a real device; cannot clean device state
info: [debug] Not setting locale because we’re using a real device
info: [debug] No iOS / app preferences to set
info: [debug] Starting iOS device log capture via deviceconsole
info: [debug] Not pre-launching simulator
info: [debug] Creating iDevice object with udid eb31339bcf670debc19f28cff19f152e8253bcc3
info: [debug] Couldn’t find ideviceinstaller, trying built-in at /usr/local/avm/versions/1.3.1/node_modules/appium/build/libimobiledevice-macosx/ideviceinstaller
info: [debug] Checking app install status using: /usr/local/avm/versions/1.3.1/node_modules/appium/build/fruitstrap/fruitstrap isInstalled --id eb31339bcf670debc19f28cff19f152e8253bcc3 --bundle com.kitabu.twigtale
info: [debug] App is installed.
info: [debug] fullReset requested. Forcing app install.
info: [debug] Installing app using cmd: /usr/local/avm/versions/1.3.1/node_modules/appium/build/fruitstrap/fruitstrap install --id eb31339bcf670debc19f28cff19f152e8253bcc3 --bundle “/var/folders/tg/x5dhcfyj59x9msfly2h8dnwc0000gp/T/114119-51883-152xfo0/twigtale.app”
info: [debug] Starting command proxy.
info: [debug] Instruments socket server started at /tmp/instruments_sock
info: [debug] Starting instruments
info: [debug] Instruments is at: /Applications/Xcode.app/Contents/Developer/usr/bin/instruments
info: Launching instruments
info: [debug] Attempting to run app on real device with UDID eb31339bcf670debc19f28cff19f152e8253bcc3
info: [debug] Spawning instruments with command: /Applications/Xcode.app/Contents/Developer/usr/bin/instruments -t /Applications/Xcode.app/Contents/Applications/Instruments.app/Contents/PlugIns/AutomationInstrument.xrplugin/Contents/Resources/Automation.tracetemplate -D /tmp/appium-instruments/instrumentscli0.trace -w eb31339bcf670debc19f28cff19f152e8253bcc3 com.kitabu.twigtale -e UIASCRIPT “/Users/rcastelino/Library/Application Support/appium/bootstrap/bootstrap-0a54548be21e71c1.js” -e UIARESULTSPATH /tmp/appium-instruments

I tried this as well but it doesn’t seem to work on real iOS devices… I had to uninstall/install using ideviceinstaller…

True. This issue still exists with Appium 1.3.4
So have to do an uninstall / install using ideviceinstaller or fruitstrap

1 Like

Issue still existent with the latest version of Appium for iOS.

This seems to be the only way out currently, right?

Roland, do you have any steps for this?