Recovery testing checks the tested product from the point of ability to withstand and successfully restore after possible failures appeared due to the software errors, equipment failures and connection errors. It is often chosen among mobile testing services and is applied to the 24/7 mode applications where every minute of delay costs too much.
Main Recovery Testing Options:
- Check-up of recovery after the system or transaction failure.
- Examination of the efficient reestablishment of an app after the unforeseen failure scenarios.
- Control the app’s ability to process transactions in the power failure condition (dead battery / incorrect application termination).
- Verification of the data restoration process after the connection interruption.
Another Significant Verification Areas:
- Installation testing (quick installation of an app which meets all the requirements).
- Removing testing (quick removing meeting all the requirements).
- Network test cases (examination of an adequacy of the network operation under different download conditions, as well as checking the network abilities to provide functioning of all the devices used for testing).
- Inspection of the dysfunctional buttons availability.
- Proof of the app’s download screen.
- Verifying the possibility of keyboard input during the network failures.
- Revision of the app running methods.
- Scrutiny of the occurrence of charge effect in case if an app is in the background mode.
- Checkout procedure of the Eco and High Performance Mode functioning.
- Determining consequences of the battery removing while an app is running.
- Examination of level of the app’s energy consumption.
- Testing the app’s side effects.
Continuous integration services are also very important for the recovery testing process. Integration testing, in the context of which the checks of modules’ interaction are performed, as well as testing the apps with OS and others, should be separately mentioned.
Scenarios of Various Types of Interruptions During the App’s Operation:
- incoming call;
- incoming message;
- another app’s message appeared on the screen;
- network disappeared or the connection quality worsened (as far as it is a usual case for mobile networks);
- app was collapsed to tray;
- app switched to the background mode and so on.
Recovery testing can be considered to be one of the most critical and important software quality assurance services, which means that all the above mentioned cases should be foreseen while the application’s developing and testing in order to provide the usability of the software product.