Download presentation
Presentation is loading. Please wait.
Published byJustin McBride Modified over 4 years ago
1
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Ashish Mishra Automation Lifecycle of Mobile Applications
2
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Agenda: Why automate? Automation Lifecycle Application building Application installation Launching applications and tests Collecting test logs and results Result reporting. Demos Q&A 2
3
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Why Automate: Multiple Phone models Multiple Operating systems Multiple Application versions Multiple Carriers Device specific features Complex API testing Large number of test cases 3
4
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Automation Lifecycle: 4
5
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Automation Lifecycle: Building applications 5 Jenkins – an extendable continuous Integration server. Install Apache tomcat web server Get Jenkins.war from Jenkins-ci.org and deploy. Jenkins + Android: Setup: Eclipse + Android SDK + ADT Plugin Android App –android update project –p Test App – android update test-project –m -p Build the android projects using: ant clean debug Jenkins + iOS: Setup: Mac + Xcode + iOS SDK Build iOS project using: xcodebuild -configuration ${BUILD_TYPE} -target ${TARGET_NAME} -sdk ${SIMULATOR_OR_IOS_SDK}
6
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Automation Lifecycle: Installing Applications Android: Android SDK provides adb which can be used to install/uninstall applications from simulator/devices. adb [-e | –d ] install adb [-e | –d ] uninstall Non-Jailbroken iOS devices: Get sources from libimobiledevice.org and compile to create ideviceinstaller This can be used to install/uninstall IPAs to any iOS device from command line. Jailbroken iOS devices: Install SSH server from Cydia App store. Unzip IPA, modify Info.plist file to register for URL handler and copy inside device. 6
7
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Automation Lifecycle: Running Applications and launching tests Android: Applications can be launched from command line in emulators/devices using: adb shell am start –n com.google.android.contacts/.ContactsActivity –e Jailbroken iOS device: Application need to register as an URI handler. Install Erica utilties from Cydia app store. Ssh into the device and use following command : uiopen testapp:// Non-Jailbroken iOS device: The only option of launching apps from command line is using: $ instruments -t /Developer/Platforms/iPhoneOS.platform/Developer/Library/Instruments/PlugIn s/AutomationInstrument.bundle/Contents/Resources/Automation.tracetemplate /.app -e UIASCRIPT 7
8
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Automation Lifecycle: Collecting test results and logs Android: To fetch logs and files from device to desktop: adb pull Jailbroken iOS devices: Use scp to pull back results from device to desktop. Non-Jailbroken iOS devices: Fuse4x allows you to mount iOS devices document directory on the desktop machine by the following command : Ifuse -u --appid 8
9
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Automation Lifecycle: Test result reporting Jenkins provides in-built support for Junit test result xml reports. Supply the path of test result in junit format in the jenkins job : Graphs, trends and drill down options are also available. Jenkins can be configured to preserve selective set or a predefined number of test results. 9
10
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Demos: Automation lifecycle of Android and iOS Applications 10
11
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Thank You 11
Similar presentations
© 2018 SlidePlayer.com Inc.
All rights reserved.
Ppt on child growth and development Ppt on linear power supply Open ppt on ipad keynote Ppt on regional transport office mumbai Cdc ppt on zika Ppt on introduction to object-oriented programming with c++ Ppt on first conditional sentences Ppt on business marketing management Ppt on circles for class 9 Ppt on non material heritage