Software Testing of Mobile Applications: Challenges and Future Research Directions
Upcoming SlideShare
Loading in...5
×
 

Software Testing of Mobile Applications: Challenges and Future Research Directions

on

  • 4,972 views

Those slides have been presented @ AST 2012, the 7th International Workshop on Automation of Software Test (part of ICSE 2012)

Those slides have been presented @ AST 2012, the 7th International Workshop on Automation of Software Test (part of ICSE 2012)

See also http://www.henrymuccini.com/mobiletesting

Statistics

Views

Total Views
4,972
Views on SlideShare
3,537
Embed Views
1,435

Actions

Likes
0
Downloads
75
Comments
0

35 Embeds 1,435

http://www.henrymuccini.com 971
http://henrymuccini.blogspot.it 175
http://henrymuccini.blogspot.com 97
http://henrymuccini.blogspot.in 57
https://henrymuccini.blogspot.com 24
http://henrymuccini.blogspot.de 15
http://henrymuccini.blogspot.ca 14
http://henrymuccini.blogspot.nl 8
http://henrymuccini.blogspot.ch 7
http://henrymuccini.blogspot.co.uk 7
http://henrymuccini.blogspot.fr 7
http://henrymuccini.blogspot.com.es 6
http://henrymuccini.blogspot.sk 5
http://henrymuccini.blogspot.se 4
http://henrymuccini.blogspot.ro 4
http://translate.googleusercontent.com 4
http://henrymuccini.blogspot.fi 4
http://henrymuccini.blogspot.ie 3
http://henrymuccini.blogspot.no 3
http://henrymuccini.blogspot.co.at 2
http://henrymuccini.blogspot.com.ar 2
http://henrymuccini.blogspot.com.au 2
http://henrymuccini.blogspot.kr 2
http://henrymuccini.blogspot.ae 1
http://henrymuccini.blogspot.sg 1
http://henrymuccini.blogspot.co.il 1
http://henrymuccini.blogspot.com.tr 1
http://henrymuccini.blogspot.dk 1
http://henrymuccini.blogspot.tw 1
http://www.docshut.com 1
http://henrymuccini.blogspot.hu 1
http://www.henrymuccini.come2Findex.php 1
http://henrymuccini.blogspot.co.nz 1
http://henrymuccini.blogspot.cz 1
http://webcache.googleusercontent.com 1
More...

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Software Testing of Mobile Applications: Challenges and Future Research Directions Software Testing of Mobile Applications: Challenges and Future Research Directions Presentation Transcript

  • Università degli Studi dell’Aquila Henry Muccini, Antonio Di Francesco, Patrizio EspositoDipartimento di Ingegneria, Scienze dell’Informazione e Matematica, University of L’Aquila www.henrymuccini.com, @muccinihenry@AST 2012, the 7th International Workshop on Automation of Software Test, Zurich, June 02 2012
  • 2 Goal and RQs Goal of this presentation is to convey two messages to the audience:  testing applications running on mobile devices is an important task  those applications require dedicated testing techniques
  • 3 This work is conducted in the context of a series of activities conducted by my Department on mobile applications:  Testing of (context-aware) applications  Engineering of mobile applications  A course we launches one year ago on “applications for mobile devices)  A lab we are planning to build on those topics
  • # of downloads:29 billions of mobile appsdownloaded in 2011.abiresearch185 billions of downloadedapps by 2014.GartnerMarket:$ 128 billions (2011).$ 150 billions (2012).Strategy Analytics
  • http://code.google.com/p/android/issues/list
  • 6 M-health Navatar M-Payments
  • 7 Mobile Computing & Context-Awareness In mobile computing an application is considered to be mobile if it runs on an electronic device that may move (e.g., mp3 readers, digital camera, mobile phones). In context-aware computing, an application is aware of the computing environment in which it runs, and adapts/reacts according to its computing, user, physical, or time context [Schilit1994,Chen2000].
  • Type of Mobile Apps Native applications Web applications Hibrid applications
  • Why differentiating Context-aware apps from Apps4Mobile?From a testing perspective:  The type and variaty of inputs are unpredictable  Low programming supportFrom a technological perspective:  Sensors-based applications are becoming pervasiveFrom a market perspective:  $ 96 billions in 2015 (gartner)  “context-aware mobile applications will change the business world…” [Beth Schultz]  ”creating applications for use in the mobile context will ultimately create better applications that scale across connected devices” [Eric Schmidt]  Projects ongoing
  • 10 Peculiarities of mobile applications Type of Mobile Application Peculiarity Implications on Testing Mobile Connectivity Reliability, performance, security, and functional testing through different networks Apps4Mobile Limited Resources Performance and functional monitoring Autonomy Monitoring for energy consumption MobileApps User Interface GUI Testing Context Awareness Context-dependent functional and extra functional testing Mobile Applications Adaptation Adaptation correctness New programming languages New white box and black-box testing, byte-code analysis New O.S.s Compatibility and O.S. testing Diversity of phones and O.S.s Diversity coverage Touch Screens Usability, and response to screen touch
  • 11 Peculiarities and Implications on testing Type of Mobile Application Peculiarity Implications on Testing Mobile Connectivity Reliability, performance, security, and functional testing through different networks Apps4Mobile Limited Resources Performance and functional monitoring Autonomy Monitoring for energy consumption MobileApps User Interface GUI Testing Context Awareness Context-dependent functional and extra functional testing Mobile Applications Adaptation Adaptation correctness New programming languages New white box and black-box testing, byte-code analysis New O.S.s Compatibility and O.S. testing Diversity of phones and O.S.s Diversity coverage Touch Screens Usability, and response to screen touch
  • 12 Peculiarities and Implications on testing Type of Mobile Application Peculiarity Implications on Testing Mobile Connectivity 512 MB of RAM, Reliability, performance, security, 64 GB of disk space, testing Ghz dual core and functional and 1 through different networks CPU Apps4Mobile Limited Resources Performance and functional monitoring Autonomy Monitoring for energy consumption MobileApps User Interface GUI Testing Context Awareness Context-dependent functional and extra functional testing Mobile Applications Adaptation Adaptation correctness New programming languages New white box and black-box testing, byte-code analysis New O.S.s Compatibility and O.S. testing Diversity of phones and O.S.s Diversity coverage Touch Screens Usability, and response to screen touch
  • 13 Peculiarities and Implications on testing Type of Mobile iPhone 4S: Application Peculiarity 200 hours autonomy in stand-by Testing to Implications on …drops Mobile Connectivity Reliability, performance, security, 9 hours when Wi-Fi is enabled … drops to and functional testing through 6 hours when a 3G connection is active different networks Apps4Mobile New OS releases to increase autonomy Limited Resources Performance and functional monitoring Autonomy Monitoring for energy consumption MobileApps User Interface GUI Testing Context Awareness Context-dependent functional and extra functional testing Mobile Applications Adaptation Adaptation correctness New programming languages New white box and black-box testing, byte-code analysis New O.S.s Compatibility and O.S. testing Diversity of phones and O.S.s Diversity coverage Touch Screens Usability, and response to screen touch
  • 14 Peculiarities and Implications on testing Type of Mobile Application Peculiarity Implications on Testing Mobile Connectivity Reliability, performance, security, and functional testing through different networks Apps4Mobile Huge effort Limited Resources Performance and functional monitoring Autonomy Monitoring for energy consumption MobileApps User Interface GUI Testing Context Awareness Context-dependent functional and extra functional testing Mobile Applications Adaptation Adaptation correctness New programming languages New white box and black-box testing, byte-code analysis New O.S.s Compatibility and O.S. testing Diversity of phones and O.S.s Diversity coverage Touch Screens Usability, and response to screen touch
  • 15 Peculiarities and Implications on testing Type of Mobile Application Peculiarity Implications on Testing Mobile Connectivity Reliability, performance, security, and functional testing through different networks Apps4Mobile Limited Resources Is the app going to work infunctional Performance and any monitoring environment and under any unpredictable Autonomy scenarios? Monitoring for energy consumption MobileApps User Interface GUI Testing Context Awareness Context-dependent functional and extra functional testing Mobile Applications Adaptation Adaptation correctness New programming languages New white box and black-box testing, byte-code analysis New O.S.s Compatibility and O.S. testing Diversity of phones and O.S.s Diversity coverage Touch Screens Usability, and response to screen touch
  • 16 Peculiarities and Implications on testing Type of Mobile Application Peculiarity Implications on Testing Mobile Connectivity Reliability, performance, security, and functional testing through different networks Apps4Mobile Limited Resources Performance and functional monitoring Autonomy Monitoring for energy consumption MobileApps User Interface GUI Testing Context Awareness Context-dependent functional and extra functional testing Mobile Applications Adaptation Adaptation correctness New programming languages 1,800 different hw/sw New white box and black-box configurations analysis testing, byte-code New O.S.s Compatibility and O.S. testing Diversity of phones and O.S.s Diversity coverage Touch Screens Usability, and response to screen touch
  • 17 Challenges Test Selection for context-aware mobile applications Challenges: unpredictabile and high variable inputs Potentials:  Create higher level libraries for developers  Coverage criteria  Scenario-based approaches
  • Context-aware programmingpublic class SensorActivity extends Activity, implements SensorEventListener { private final SensorManager mSensorManager; private final Sensor mAccelerometer; public SensorActivity() { mSensorManager = (SensorManager)getSystemService(SENSOR_SERVICE); mAccelerometer = mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER); } protected void onResume() { super.onResume(); mSensorManager.registerListener(mAccelerometer, SensorManager.SENSOR_DELAY_NORMAL); } protected void onPause() { super.onPause(); mSensorManager.unregisterListener(this); } public void onAccuracyChanged(Sensor sensor, int accuracy) { } public void onSensorChanged(SensorEvent event) { }}
  • 19
  • 20 Challenges Security testing Challenge:  the mobility of the device into networks with different security levels increases security.  a trojan might have access to personal date, private networks, and credit card information  the rich contextual information presents real privacy concerns.  the democratization of mobile application publishers also increases the number of apps store the final user does not know anything about.
  • 21 Challenges Performance and Reliability testing Challenge:  Performance and reliability of mobile applications strongly depends on the mobile device resources, on the device operational mode, on the connectivity quality and variability, and other contextual information. Potentials:  new techniques to explicitly consider characteristics related to (changing) contexts and different devices.  Run-time analysis techniques to prevent performance degradation.
  • 22 Challenges Product Line Challenge:  130 devices running Android, with 1,300 hw/sw configurations Potentials  new systematic combinatorial/product line testing techniques  run-time analysis of instrumented beta versions of the application  testing as a service
  • 25 Conclusions Test automation to decrease the cost of testing  mobile applications must be cheap  outsourcing, cloud- and crow-based testing Testing automation towards all the different layers  current bugs are due to interoperability problems that exist today among the application, application framework, operating system, and hardware (sensoring) layers