What students will learn?

  • What are the new challenges of testing mobile applications.
  • How to unit test Android applications.
  • Testing for multiple devices.
  • Testing for naturalization.
  • Testing SQL database.
  • Testing location based applications.
  • Testing telephony services.

Audience

Software testers who are responsible for testing Android mobile applications.

Prerequisites

Previous experience in software testing.

Duration

2 days.

Outline for Testing Mobile Applications Android Edition

Chapter 1. Introduction to Mobile Testing

  • Types of testing – unit, function, performance, natural language.
  • Challenges of mobile testing.
  • A framework for mobile testing.

Chapter 2. The Architecture of Android

  • Key Components Stack
  • The Kernel
  • Libraries
  • The Dalvik JVM
  • Application Framework
  • Applications
  • Activity
  • Service
  • Broadcast Receiver
  • Summary

Chapter 3. Unit Testing Applications

  • Introduction
  • Manual unit testing using the AVD emulator
  • Using the DDMS client.
  • Using adb.
  • Android Testing Framework
  • The Architecture
  • Creating a Test Project
  • Test Case Class for an Activity
  • Test Initialization
  • Writing a Test Case Method
  • Service Test Case Class
  • Running Test Cases
  • Useful Methods of an Activity Test Case Class
  • Additional Assertion Function
  • The TouchUtils Class
  • Developing and Testing on a Device
  • Stress Test Monkey
  • Third Party Testing Tools
  • Summary

Chapter 4. Function Testing Applications

  • Introduction.
  • Installing an application in a device.
  • Testing for activity lifecycle.
  • Testing for low memory situation.
  • Testing for device orientation change.
  • Testing for different resolution.
  • Naturalization testing.

Chapter 5. Testing Disk Storage

  • Introduction.
  • Testing application preferences.
  • Testing file storage.
  • Testing storage on SD card.
  • Testing for SQL database storage.
  • Testing for version upgrade and SQL schema change.

Chapter 6. Testing Network Access

  • Introduction.
  • Testing for web server access.
  • Test for different network bandwidth.
  • Test for error situations.
  • Test with WI-FI and network service.
  • Test for offline behavior.

Chapter 7. Testing Location Based Services

  • Introduction.
  • Testing GPS based location fix.
  • Testing WI-FI and cell signal based location fix.
  • Testing MapView.
  • Testing for location change.

Chapter 8. Testing Telephony Services

  • Introduction.
  • Making a phone call.
  • Sending SMS message.
  • SMS message failure.
  • Reacting to call state change.

Chapter 9. Advanced Topics

  • Viewing application log using LogCat
  • Getting user crash report.
  • Summary.