Test Data Management :
Approach for Functional Testing
Charu Jain
The Quality Mind set: From Destination to Journey
Continuous
Integration
Nightly Build
Pair
Programming
Regression
Smoke/Soak
Performance /
Endurance
Our Focus : Regression Testing in Data Intensive Applications
Introduction: The Speed Dilemma
Test
More?
Test
Quickly?
Data Intensive: Testing Complexities
• Testing against data variations
• The software evolution due to business and
technical changes
• Evolution of data providers
Key Testing Considerations
• Business logic verification
• Data conditions coverage
Business Logic Testing: Traditional Approach
• Business logic in test case; Tight coupling with Application code
• Complex design of test cases
• Additional constructs in Test Script for Data Handling
• Implications
↓ As business logic evolves, both code and script need to evolve
↓ QA testing for Test Script required
↓ Test Execution time could increase due to overhead of Data Handling
Data Sources vs Testing
Mock Data Integrated Test
Environment
• Quick to setup
• Easy to maintain
• Unit testing
• Limited data
set/low volume
data
• Good coverage
• Progressive testing
• Operations overhead
• Refresh Management
• Complexities in
verifying business logic
with moving data.
Managed
Test Data
• Good coverage
• Scripts are
independent of
functional logic.
• Initial setup-
Production dump
Data Testing : An Example
• The Scenario
▫ Auto Renewal of Fixed Deposit Process
▫ Processing : For all FD getting mature on a specified date
▫ Business Cases:
 Opted / Not Opted
 Period of Renewals same as original
 Interest Rates to be latest
Auto Renew
FD
FD Master
Info
Interest
Rates
FD
Renewals
Managed Test Data : The Approach
The
Change
Certification
Add to
Regression
Suite
Periodic
refresh from
Production
Progression
Testing
Automated
Regression
Testing*
Automated
Scripting*
Addition to
Automation
Suite
1
2
3
*Managed Data
Environemt
Progression Testing: Step1
Integrated Test Data
Environment
FD Renewal-
(Interest
Rate)
FD Master
Information
Interest Rate
Progression
Validation
FD Renewal –
Certified State
(Interest Rate)
The
Change
Certification
Add to
Regression
Suite
Progression
Testing
Automated
Regression
Testing
Automated
Scripting
1
2
3
An Illustration:
Test Script steps in Managed Data
▫ If Duration is 80D and SrCtz is N
 Interest Rate is 6
▫ If Duration is 5yr and SrCtz is N
 Interest Rate is 7.5
▫ If Duration is 5yr and SrCtz is Y
 Interest Rate is 8
▫ Compare interest with application
output of Interest
RefNo Name M Amt Duration Sr Ctz?
10101 Suman 10,000 80D N
10201 Raman 20,000 1yr Y
10301 Rakesh 50,000 5yr N
10401 Tapish 75,000 5yr Y
RefNo Duration Rate (%)
R01 0-179 6
R02 6m-1yr 7
R03 <1yr, >3yr 8
R04 >3yr 7.5
FD Master Interest Rate
• Test Script steps in Integrated
environment.
▫ Read from ‘FD Master’
 Duration
 Sr Ctz flag
▫ Logical operation-
 Compare duration
 Apply the flag
▫ Calculate interest.
▫ Compare interest with application
output of Interest
Progression Automated: Step 2
Managed Test Data
Environment
FD Renewal
(Interest
Calculation)
FD Master
Information
Interest Rate
Automated
validation
output against the
expected results.
FD Renewal
Certified
Additional Progression/Regression
Parallel Execution - Step 1 and 3
FD Renewal
(Interest
Calculation) +
(Maturity
Date)
FD Master
Information
Start
date/duration
Interest Rate
Progression
Certification
(Maturity Date) Automated
Regression
Managed Data
Environment
FD Renewal
Certified
(Interest
Calculation) +
(Maturity Date)
Benefits:
• Parallel execution of progression and regression
• Test Scripts agnostic to logic in functionality
• Optimization of execution time for automated regression.
• Focus on domain knowledge, scripting skills not mandatory.
• Very suitable for Agile delivery process
• Suitable for applications where Data volume is high
• Suitable when physical data copy is maintained.
Note of Caution:
• Dedicated environment– Cost & Ongoing maintenance.
• Periodic refreshes may lead to revalidation of test cases.
• Data masking might be required for sensitive data.
• Challenge if there is an automation backlog.
Thank You

Fidelity Test Data Management

  • 1.
    Test Data Management: Approach for Functional Testing Charu Jain
  • 2.
    The Quality Mindset: From Destination to Journey Continuous Integration Nightly Build Pair Programming Regression Smoke/Soak Performance / Endurance Our Focus : Regression Testing in Data Intensive Applications
  • 3.
    Introduction: The SpeedDilemma Test More? Test Quickly?
  • 4.
    Data Intensive: TestingComplexities • Testing against data variations • The software evolution due to business and technical changes • Evolution of data providers Key Testing Considerations • Business logic verification • Data conditions coverage
  • 5.
    Business Logic Testing:Traditional Approach • Business logic in test case; Tight coupling with Application code • Complex design of test cases • Additional constructs in Test Script for Data Handling • Implications ↓ As business logic evolves, both code and script need to evolve ↓ QA testing for Test Script required ↓ Test Execution time could increase due to overhead of Data Handling
  • 6.
    Data Sources vsTesting Mock Data Integrated Test Environment • Quick to setup • Easy to maintain • Unit testing • Limited data set/low volume data • Good coverage • Progressive testing • Operations overhead • Refresh Management • Complexities in verifying business logic with moving data. Managed Test Data • Good coverage • Scripts are independent of functional logic. • Initial setup- Production dump
  • 7.
    Data Testing :An Example • The Scenario ▫ Auto Renewal of Fixed Deposit Process ▫ Processing : For all FD getting mature on a specified date ▫ Business Cases:  Opted / Not Opted  Period of Renewals same as original  Interest Rates to be latest Auto Renew FD FD Master Info Interest Rates FD Renewals
  • 8.
    Managed Test Data: The Approach The Change Certification Add to Regression Suite Periodic refresh from Production Progression Testing Automated Regression Testing* Automated Scripting* Addition to Automation Suite 1 2 3 *Managed Data Environemt
  • 9.
    Progression Testing: Step1 IntegratedTest Data Environment FD Renewal- (Interest Rate) FD Master Information Interest Rate Progression Validation FD Renewal – Certified State (Interest Rate) The Change Certification Add to Regression Suite Progression Testing Automated Regression Testing Automated Scripting 1 2 3
  • 10.
    An Illustration: Test Scriptsteps in Managed Data ▫ If Duration is 80D and SrCtz is N  Interest Rate is 6 ▫ If Duration is 5yr and SrCtz is N  Interest Rate is 7.5 ▫ If Duration is 5yr and SrCtz is Y  Interest Rate is 8 ▫ Compare interest with application output of Interest RefNo Name M Amt Duration Sr Ctz? 10101 Suman 10,000 80D N 10201 Raman 20,000 1yr Y 10301 Rakesh 50,000 5yr N 10401 Tapish 75,000 5yr Y RefNo Duration Rate (%) R01 0-179 6 R02 6m-1yr 7 R03 <1yr, >3yr 8 R04 >3yr 7.5 FD Master Interest Rate • Test Script steps in Integrated environment. ▫ Read from ‘FD Master’  Duration  Sr Ctz flag ▫ Logical operation-  Compare duration  Apply the flag ▫ Calculate interest. ▫ Compare interest with application output of Interest
  • 11.
    Progression Automated: Step2 Managed Test Data Environment FD Renewal (Interest Calculation) FD Master Information Interest Rate Automated validation output against the expected results. FD Renewal Certified
  • 12.
    Additional Progression/Regression Parallel Execution- Step 1 and 3 FD Renewal (Interest Calculation) + (Maturity Date) FD Master Information Start date/duration Interest Rate Progression Certification (Maturity Date) Automated Regression Managed Data Environment FD Renewal Certified (Interest Calculation) + (Maturity Date)
  • 13.
    Benefits: • Parallel executionof progression and regression • Test Scripts agnostic to logic in functionality • Optimization of execution time for automated regression. • Focus on domain knowledge, scripting skills not mandatory. • Very suitable for Agile delivery process • Suitable for applications where Data volume is high • Suitable when physical data copy is maintained.
  • 14.
    Note of Caution: •Dedicated environment– Cost & Ongoing maintenance. • Periodic refreshes may lead to revalidation of test cases. • Data masking might be required for sensitive data. • Challenge if there is an automation backlog.
  • 15.