In this article, you will be able to understand about what is test data and test data management process.
What is Test Data?
Test data is data which has been identified/created specially for use in testing.
Types of Test Data
1.Blank Data: Used to test how code responds with blank input data.
2.Valid Data: Used to test how code responds with valid input data.
3.Invalid data: Used to test how code responds with invalid input data.
Test Data Management
TDM refers to the process of creating/managing and delivering test data to the corresponding team.
Why do we need TDM?
Testers are spending more than 50-70 percent of their time looking for or creating the test data instead of doing testing in QA cycle. Typical testers are not database experts. Testers will face many challenges in create/retrieve data from different sources.
Hence, Test data management which is Database centric will definitely help the testers to increase testing efficiency and coverage. TDM enables Create/Finding test data easy.
Let's see about what is happening in Testing cycle.
What is happening in Testing cycle?
In Testing cycle, Testers need test data for executing the test cases.
First, Test Data request emails will be sent out to different teams like Development team, Database team, Architecture team, etc. Several approvals required to access data from different sources. Hence a lot of manual process happens to create/get the test data.
Second, Such actions may lead to lack of traceability/reusability of test data like altering the test scripts again and again for different test cases. Eventually, it will slow down the QA process.
Third, there is a chance of overused environments. For example, four different teams may be working on one QA environment. Without proper structure, Data gets overused and eventually results in data defects.
Data defects will lead to Testing delay. As, Testing cannot be performed with defective test data, correcting the test data again causes the delay in the deliverables.
As a summary, there is a lack of a central system of record/tool to track test data requests and Extremely manual process needed to support the provisioning of test data.
Test Data Life Cycle
Let’s see about Test Data Life cycle.
In this phase, the test data requirements are captured considering various factors like Data Masking/Data obfuscation, Data volume, Data Refresh, Data source, etc.
A test data plan and a suitable test data process is discussed and an effort estimation is done in this phase.
Test Data Creation
In this phase, test data is created based on the project test data requirements. It can be created manually or by using automated techniques.
Test Data Validation
The test data created is validated as per the business requirements.
Test Data Maintenance
Test data maintenance/changes will happen as per the tests/test change requests.
Key Benefits of TDM
1. Automated provisioning of Test case managed data
2. Efficiently execute the right test case against requirements
3. Increases Application Reliability
4. Provides the right test data across all test environments every time
Test Data Management Process
In general, Test data creation will be done in QA phase. Testers spend more than 60 percent time in preparing the test data. Eventually, it results in delay in deliverables.
In Projects where they follow TDM process, test data creation will be done in application design phase itself.
Once the application design phase complete, code development starts and test case/test design as well. Once a test case is created, then test data request can be submitted for the data to be created.
The application design phase will have the data model for the TDM team to use to create the data.
The intent is to have the test data created before a test cycle (QA phase) begins. This eliminates waiting for test data in QA phase.
TDM will define roles and responsibilities for managing test data. TDM will be responsible for Delivering data on time and on budget.
Streamlining the TDM process will automatically enable the testing cycle to be completed on time.
TDM will perform Data creation and transferring data to virtualized Dev, QA virtual environments or already existing Dev, QA environments or for New Dev/QA environments as per the project requirements. The process involves Masking the data and transferring data to virtualized environments or creating a subset and sending data to already existing Dev/QA environments. Please refer the below given figure.
We have seen about the what is test data management process and why do we need TDM to improve QA process. I would suggest to Streamline your test case design process through TDM.
· TDM reduces risk of incorrect test data.
· It helps to Improve the efficiency throughout software development lifecycle.
· It Provides a robust solution for delivering test data
· It increases application reliability.
· It Manages Tools and processes to quickly and easily manage test data.
· It speeds up QA by enabling testers to start testing on the first day of the cycle and spend zero time looking for/creating data.
By following TDM process, many organizations have saved money and time. Additional advantages may also include the following:
1. 95 percent time reduction in test data provisioning when implementing synthetic data creation
2. Reduces test cycles by over 30 percent by removing redundant test cases when implementing test case optimization practices
3. Reduces storage costs by using the correct and complete set of data
4. Increases data security
Thanks for reading. Please add your comments in the comment section. We will see about Test Data Management techniques in detail in my next blog. Happy Reading .