Mobile App Testing – Tips

Android App Testing

Functional Testing:

  • Test the installation, login, search and other common features
  • Write test cases
  • Do exploratory testing
  • Execute test cases
  • Do some automation.

Security Testing:

  • Manual Penetration
    • Cross-Site Scripting, SQL Injection, Denial of Service, Buffer Overflow, And others
  • Static Security Testing
    • Confidentiality: app keeps your private data private?
    • Integrity:  data from your app is trusted and verified?
    • Authentication: app verifies who you are in any way?
    • Authorization: app properly limit user privileges?
    • Availability: can any attacker take your app offline?
    • Non-Repudiation: any logs of events?
  • Dynamic Security Testing
    • Search your active code for XSS, SQL and other common attacks
    • Cross-Site Scripting, SQL Injection, Denial of Service, Buffer Overflow
    • Inspect directories, leftover source code and resource files to find hidden username/passwords, SQL strings, ODBC connectors and other sensitive information.

Load & Performance Testing:

  • Ensure that your mobile application is prepared for peak usage periods with a prepared load & performance services.
  • Live Load: talk to your employees to test the application on theirs/company phones first
  • Simulated Load: use simulated load testing tools to create thousands of real browser sessions (in case of a web app) to provide you with a complete snapshot of your web application’s performance
  • Hybrid Load: combine both testers with automated tools.

Localization Testing:

  • verification of context and accuracy for the localized mobile application
  • Validate translation twice with contracted translators
  • Full L10N Testing:
    • Content: static & dynamic
    • Dates: December 1 or 1 December
    • Characters: different sets of characters (French, Dutch, Romanian, Japanese, Mandarin, etc)
    • Postal Codes:  only digits, or digits + letters
    • Phone numbers: different formats
    • Direction: rtl for exemple

Usability Testing:

  • Test the usability of your mobile application
  • Is one – if not the —most vital task for a startup planning to launch a mobile application
  • Usability ideas to get started:
    • Page Layout: Ask your users to evaluate the overall effectiveness of the page layout. Are they instinctively drawn to your application’s main features, or are they directed elsewhere? Also, are they required to scan/scroll for any important features? In short, the layout might seem intuitive to you, but that’s probably because you designed it! Therefore, a fresh set of eyes is a must.
    • Color Schemes: This can include an evaluation of the use of colors in the background, text, links, icons, buttons and other aspects of your mobile app.
    • Findability: When conducting your user tests, give them a set of 4-5 items to find. This can include Help, About, Instructions, Search or others. This will help you determine your application’s level of accessibility. Remember, mobile users have far less patience than web users, so these items need to be placed in the best spot possible. Find out where that is.
    • Localization: If your application is going to be translated into other languages (or made available in non-English speaking markets), you’ll want to make sure that your app is consistent in terms of text, messages and symbols (e.g. dollar signs).

Continue reading

Mobile Application Facts

  • Adult mobile users who have downloaded an app to their phone nearly doubled in the past two years – rising from 22% in September 2009 to 38% in August 2011. (source)
  • The average iOS device owner will download 83 apps in 2011 vs. 51 in 2010, a 61% increase year over year. (source)
  • The average smartphone user in the [study] adds just 2.5 new apps per month. (source)
  • In May 2010, only about two-thirds (68%) of adults who had apps on their phones reported actually using them. (source)
  • In March 2011, 26% of all apps downloaded were opened only once and then never used again. 26% were used 11 times or more. Of the remaining 48% of apps: 13% are opened only twice, 9% are opened only three times, all the way to 2% that are opened 10 times and never again. (source)
  • 38% 
iOS & Android users stick with an app after one month. 14% 
iOS & Android users stick with an app after six months. After 12 months, only 4% are left. (source)
  • Roughly half (51%) of mobile owners use a handful of apps at least once a week, while 17% report using no apps on a regular basis. Almost a third (31%) could be called app “power users” in that they use 6 or more. (source)
  • The top 10 Android apps account for 43% of all the time spent by Android consumers on mobile apps. The top 50 apps account for 61% of all time spent. With 250,000+ Android apps available at the time of this writing, that means the remaining 249,950+ apps have to compete for the remaining 39 percent of the pie. (source)

Article source.

Mobile testing: mobile and wireless technologies to watch over the next years

Found a great article about the trends in the mobile industry and I made a small list below:

  1. HTML5
  2. NFC and “touch to act” applications such as payment
  3. Platform independent AD tools
  4. Location and context — indoor and outdoor
  5. Bluetooth 4
  6. 802.11ac
  7. M2M — cellular and Wi-Fi
  8. Augmented reality
  9. Multiplatform MDM
  10. LTE
  11. The advent of business-centric app stores
  12. Mobile data security technologies
  13. Wireless Health

Some interesting articles also from TechRepublic:

Mobile testing: strategy tests

Mobile applications may be downloaded for the first time and used only once or twice. Unless the value of an application is compelling, users may not be coming back to use it. They will ignore the app or even delete it after some time. Here are nine types of tests that should be included in your mobile test strategy to ensure your mobile apps are highly effective and will keep your users coming back for more.

1. Conceptual testing

Mobile apps and the features planned for them need to be socialized before development starts with at least an informal focus group consisting of typical users in the demographics to which they are targeted. Mobile apps are used in ways different from how users approach a client application or a Web-based application. Interactions need to be quick, short and appropriate for smaller form factor screens. Users also expect seamless integration with social networks and online resources. Sounding typical users out before any development is done can eliminate unnecessary features and ensure the right ones are in, before too much development effort is expended.

2. Unit testing, system testing

If the mobile app has a variety of components or logs into a back-end server, downloads or uploads data between the app and a server, regular unit testing and system testing may all need to be in place and executed extensively. If the app does not work well with the server, the overall experiences are bound to suffer.

3. Mobile user experience testing

Once a mobile app is ready with all features, it may be worthwhile to do a round of mobile user experience testing. This is giving the users the app on their mobile device before any formal release. They use the application in its entirety and report on what the experience was like, overall. This will enable developers to remove impediments to a smooth, continuous and pleasant overall user experience. When a user completes a task or an entire use case, then you can validate whether features you have implemented all fit together nicely. If not, adjustments can be made.
Continue reading