Loading

Failover Testing


A common phenomenon that is quite prevalent with machines, or to be precise with computer systems, is that they tend to suffer from performance issues. This may be due to heavy load on the system which might crash the system. One needs a mechanism to address the issues. Failover testing deals with system failures.

What is Failover Testing?

It is a way to gauge the capacity of a system in order to ensure whether a system is capable of allocating extra resource. The entire process is an effort to create a back up system. Failover testing aims to verify that a system is efficiently handling extra resource like additional CPU or servers during a failure.

A real situation could be we have 3 web servers. Due to heavy load, one fails, so we are left with two web servers. Now the question arises whether the failed server is capable of restarting on its own and will the other two servers be able to handle to load?

Failover Testing

These are few issues that is dealt with during the testing process. The testing team is responsible for handling such faults and provide a necessary solution. This type of testing is essential in assuring the reliability test planning.

The term 'failover' means that a system comes to a halt in the event of failure or abnormal termination of any of the components server, hardware, network component etc. To deal with failovers a system is equipped with a load balancer that will act upon in the event of system slowdown.

Failover testing is a part of performance testing activity, where we check the system for load balancing.

Factors worth considering prior taking up Fail over Testing :

  • Budget forms the core of sustenance for any organisation. Before planning to conduct a failover test, it becomes a responsibility of the members to figure out the cost to be incurred in case of failure.
  • How much cost is involved in the maintenance of such systems which are likely to fail or break down under pressure/load.
  • Chalk out the probability of occurrence of failures. Prioritize the possibilities in accordance with the degree of damage they may cause.
  • And last but not the least, it is important to analyse the time that may be required to fix the issues caused due to system breakdown.

The How's of Failover Testing:

  • It is very important to analyse requirements from performance's perspective. Also one must be ready with failover designs.
  • Set up a feasible and suitable benchmark.
  • Prepare test plans and scenarios as per the given conditions.
  • Test plan execution.
  • Prepare a detailed report of the issues encountered so far.

Backup and restore mechanism:

What if we cannot restore the data that has a back up? Or what if during the attempt for a back up the system crashes or fails? The consequences may be disastrous.

One way of testing our back up is to monitor a server without connecting it to the network. We may do so by connecting a tape drive into the server, and hence we can track the back up system without the need to issue the network duplicate server names or IP addresses.

When we are done with backup testing, the next aspect we may begin with testing failover equipments. A server slowdown or crash may be a result of router malfunction. So it's a wise thought to take up router testing in the first place. We may prioritize the tests in terms of daily,weekly or fortnightly basis. Failover testing also involves checking for uninterrupted power supplies, booting up of the operating system and so on.

If during the aforementioned process, a failover occurs it is advisable to prepare a checklist to note at what point does the system fails.

Conclusion:

The major idea that underlies fail over testing is to be able to identify the phase at which the system stops responding , is a point where the system should be able to take an action. The objective of a testing team always remains to deliver a robust system to the end user that efficiently serves the purpose it has built or design for.