Monkey testing – sounds familiar? Most of the software testing engineers must be familiar with the term. Have you ever subjected your mobile app to monkey testing?
What is monkey testing?
The term ‘monkey’ refers to the tool that creates random and repeatable user inputs for load and stress testing.
Monkey testing is usually carried out by automated testing tools and is not an absolute form of testing. Though monkey testing is not very popular with mobile app testers, variations of the same are used in manual and automated testing of mobile apps.
Smart monkeys and dump monkeys are the most common ones. Smart monkeys are employed for load and stress tests; whereas dumb monkeys are excellent in finding bugs and crashes.
So the question remains – should you monkey test your mobile app?
App abandonment is a serious threat that every business is trying to deal with. The main reasons for app abandonment are bugs and crashes. Monkey testing is a sure shot way to identify bugs and crashes!
What should you monkey test your mobile apps for?
Mobile apps have a lot of scope for monkey testing. The very fact that they are mobile and the scope for touch, gestures, orientation etc. better qualify mobile apps for monkey testing.
Touch and gestures
Testers dread the combinations of swipes and taps of mobile apps. Monkey scripts can reach beyond the humanly possible swipes and taps. For example, one of the recently found bugs in a mobile app was that the app crashes after the 89th time the user swipes. Imagine the patience and time that a tester might require to identify this bug!
All mobile apps are generally configured to be displayed in landscape or portrait mode or both. Say for example, the latest Facebook app works only in portrait mode whereas YouTube app can change its orientation based on user behavior. So ideally, once an app is configured for a certain orientation, the natural tendency is to test it for same. Only a monkey script will test it in every angle possible to identify crashes/bugs.
Imagine your app utilizes accelerometer. How many scenarios would you test to ensure the motion sensitivity of your app? Considering most of the apps are expected to be used while the user is on the go, emulating every scenario for testing becomes impossible unless you use monkey tools. For example, chances are rare that one might test the performance of an app while the mobile device is spinning (this is an extreme case, I agree).
Mobile apps deal with a lot! Handling storage, network, data, motion and more become overwhelming at times. It is critical that every mobile app undergoes load testing. For example, the effectiveness of testing the performance of a mobile app under extreme scenarios like device over heating (battery overload) is achievable using monkey testing tools than manual testers.
Break your app with chaos testing. It could mean creating data interruptions; manually try to bring down the network etc. Like in the case where you turn on the flight mode repeatedly while using the app. The app gets confused whether it is an offline mode or flight mode. These scenarios could be best tested using monkey testing tools.
Deploying monkey tools makes the whole testing process a lot more organized and frees up the time of your test engineers. Don’t you think monkey testing your mobile app is a good idea? Or do you still prefer sticking only to the regular mobile app testing? Share your stories of interesting bugs you have come across while monkey testing your app.
Next week: The various scenarios of monkey testing a mobile app.
Take charge of your enterprise app strategy today! Get started by downloading the eBook below –
Image Source: www.123rf.com