4

Interruption testing is process of making Interruption while running application. most probably performed for Mobile Applications.

is there any freeware and good automation tools available for performing interruption testing on Mobile?

can interruption testing performed on Window and Web Applications?

is there any freeware and good automation tools available for performing interruption testing on Window and Web Applications?

3
  • 1
    Sometimes you can answer these kinds of questions by searching on Google. For example, Google-searching for "interruption testing" turned up this link on the first page of search results: en.wikipedia.org/wiki/Mobile_application_testing.
    – user246
    Commented Apr 12, 2016 at 13:40
  • and further more, categorizing activities into bucket like 'interruption testing' vs. 'something-else testing' is fundamentally wrong. Yes, you need to remember and interrupt tests but build tests focusing on that is inefficient and wrong
    – Rsf
    Commented Nov 30, 2016 at 8:47
  • Sometimes interruptions are called network partitions. This guy has a blog dedicated to testing distributed systems like databases and network queues under network partition.
    – user246
    Commented Nov 30, 2016 at 10:51

3 Answers 3

4

Most of the time while performing interruption testing one would need to block the requests between backend and frontend

On mobile this can be performed with tools like burp suite which allows us to interrupt the requests made from mobile application.

I think same method can be applied by passing all requests between application through a proxy

1

Interruption Testing: Interrupt testing takes into account the disturbances caused of interruptions and suggests practical solutions to keep the user experience smooth throughout the use cycle of the application. Ideally, in case of an interruption the application that is interrupted should enter a suspended state and restart as soon as the interruption ends. But before we get into that lets start by understanding what goes wrong with an interruption.

What’s the problem with interruptions within a mobile application? For the purpose of illustration let’s imagine that you are using your mobile phone to record your baby’s first steps and just when the baby was off his feet your mobile goes into automatic screen lock!

Ideally, the camera app should prevent the screen from going into lock when it is in use. But sadly, that is not the case. Similar irritating instances arise when you are recording a meeting in progress and then suddenly the screen locks off closing the voice recorder app along with it. Text messages or mails during a game spoils the fun of the game.

Here are a few very common interruptions that people deal with every day:

Incoming and outgoing SMS/MMS/calls

Incoming notifications

Battery/cable insertion and removal for better uses

Network outage and recovery

Switch off/switch on of the media player and other connecting devices

Low memory warning

Below Few expected behavior in case of interruptions occurred in mobile:

Run in background: For example: A phone call/Facetime that you attend while you are reading a digital book on iBooks(or similar application). When the user answers a phone, iBooks waits until it is done and then resumes when the call ends.

Show alert. Alert disappears, and you work as usual. 'SMS received'- messages appear in the header. The user don't bother about it and continue working with the application as normal. Other mobile app alerts, such as a new friend request on Facebook or WhatsApp message, also fall into this category. But if the user decides to read the message, the behavior described in Point 1 is followed. If ignored, the application's state is unchanged.

Some specific scenarios for application using network :

1]Connect to network but remove LAN connection from router so device can sense wifi state on device but cannot connect to internet

2]Connection via VPN and VPN disconnected

Scenario for Application using services :

1]Kill service by clicking on recent button and swiping the application right to kill app and services

2]Kill app using third party App killer

3]Kill specific services from Settings->Manage Applications

Manual testers can simulate a lot of these situations and suggest how the app should behave and also the best ways to circumvent interruptions. While some events can be emulated, most need real device testing. Interrupt testing helps in understanding key external factors which causes disruptions and find great ways to keep user experience seamless.

Manual testers check for several usability, compatibility and performance issues. Unfortunately interrupt testing isn’t as common a procedure as it should be. Only the very best software development companies have this in their scheme of things. It is necessary that all interruption scenarios be tested during an application development lifetime on priority.

1

Interrupt Testing is a concept where we are interrupting the normal flow and functioning of the application to see how the application reacts under different circumstances. This is used more in context of mobile apps since we get text, calls, notifications etc when we are actually using an app; interrupting the normal flow of the application. But this is applicable to desktop applications as well.

You do not need any tool to do interrupt testing as it is a concept and you are basically trying to give frequent interruption to your application which can be done a lot easier manually. Some things you could do are-

In Mobile Testing, - Incoming and Outgoing SMS/MMS - Incoming and Outgoing calls - Incoming Notifications - Battery Removal - Cable Insertion and Removal - Network outage and recovery - Media Power on/off - Device Power cycle

Some of the items described above applies to desktop windows and Mac application as well like

  • When using your application try to shut down the power of your laptop and restart it. See what happens
  • When the desktop app is loading immediately kill it, then reopen it and see what happens
  • When you are using a application that involves web service calls, try disconnecting Wi-Fi/Ethernet and see what happens when a request is made. For example - Using a Banking application and say you are trying to transfer money and hit transfer, then immediately disconnect internet what happens? Does the transaction still goes through.

Hopefully this give you an idea of things you could do. You dont need tools to do this type of testing, I would advice keeping it simple.

-Raj

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.