Site icon Tutorial

Migration Testing

Go back to Tutorial

Many times, it happens in software organization that application is upgraded or moved to the different server. It means that either the application in moving to new technology or the application has moved to new server location or database has been moved to the different database server. And, this is where Migration Testing comes into account.

Talking in testing perspective, we can say that after migration we need to test that everything is working as it was working before migration and all the functionality in the new system is working as it was in the existing system.

One more thing to be noted is that after application migration, the tester needs to test the application with old data and see if it is behaving in the same way as it was behaving before it was migrated.

We can define migration testing as the process of verification of migration from an existing system to new system with minimal disruption and other loss which can occur due to migration and maintaining the same behavior of the application in the new system.

Need for Migration Testing

We know that application migration to the new system is now occurring for many of the applications. The reason may be different. It may be due to movement from old technology to new technology, maybe code optimization or movement of data in a new server or there may be other reasons for it. Some of the reasons are as given below:

Migration Testing Stages

Migration testing is done in various stages. Let us discuss them one by one. But before that, we need to understand that migration testing is performed before and after the migration is done. Different stages of migration testing or we may say that different phases of migration testing are as given below.

Considering the risk factor or other reasons involved in migration testing, testers are also supposed to do the following testing

Pre-migration Testing

Pre-migration testing is done before migration is done. For simpler applications, there is no much thing to do but for bigger applications or complex applications, before doing actual migration, testers are required to do set up activities known as pre-migration testing.

One of the most important things to be taken care of in this phase is that there should be data mapping between old application and new application. Testers are required to focus on changes that have to be performed in the new application and check that migrated application is behaving accordingly and ensure that application and database are behaving in the same way as it was behaving before migration for the part in which there was no modification.

Table structures need to be taken special care of and there should be no modification in the table structure in the migrated application unless the new update is required. The data flow of the application should be proper and functionality should work as it was working before migration. Proper planning of the migration is done in this phase.

Migration testing

Document related to migration is also reviewed by the testing team who is performing migration testing. Testing team verifies if the document is clear and there is no complexity to perform the activities related to migration. Any kind of documentation error whether it is related to the application, database, server and operating system, can be reported by the testing team.

Time taken to migrate the system completely known as downtime is recorded properly and it is very useful when the application is launched in production. Once the migration activities are completed as per migration documentation, a basic check of application functionality is done and basic database checkups are done to ensure that database is properly connected to the application.

Post-migration testing

Now after the migration is completed, testers are required to do detailed testing for the migrated application. Test cases for the old systems are executed on the new system to ensure that functionality of the application is working fine on both old data and newly added data and performance of the application has not degraded.

Testers are required to see that data is not lost and the number of the records from the database is appearing, as per expectation. Testers are required to check that the tabular structure in database and application directories and folders are properly updated in the new system.

The scope of testing in post-migration testing is very large. Testers are recommended to perform automation testing to reduce the time of test case execution and in turn, reduce time to check the functionality of the application.

Types of Migration

Following are the types of migration which generally happens during migration of the application which will also help us to understand how migration is done.

Application Migration

Application migration as the name suggests is a type of migration in which the application itself is moved to new environment from one platform to another platform. Example of application migration is migrating an application form ASP to ASP.NET technology.

Now since we are little familiar with application migration, we should understand what migration testing will be done for the application migration and what are the things that should be kept in mind while doing migration testing.

Testers are required to do following activities for doing application migration testing.

Database Migration

The not only application is migrated, the database is also migrated from one database to another database. The thing to be kept in mind while doing database migration is that first of all application should be stable and working perfectly and second thing we have to see that database is also up to the mark and format of the data type of the data value of the data etc are all well organised so that it does not create any problem after being exported to New database. Example of database migration is Migration from RDBMS to MongoDB. Testing activities during database migration include the following

Server Migration

In this type of migration, server data is moved from one server to another server which involves migration of configuration to the new server. Example of server migration is the migration of all application from Windows to mainframe server. Actions to be taken during testing activities during server migration are given as below

Testing activities during server migration are given as below.

Operating System Migration or OS migration

OS migration is the most difficult type of migration where an application is moved from one operating system to another operating system. This type of migration generally involves lots of changes to complete this. It may be done to decrease the cost of operation or maintenance or increase speed or maybe for productivity or security or to implement any other feature. Example of OS migration is the movement of application from Windows operating system two Linux operating system. Testing activities in this type of migration may include:

Go back to Tutorial

Exit mobile version