Upload
agile-testing-alliance
View
1.164
Download
0
Embed Size (px)
Citation preview
Test Data Management : Approach for Functional Testing
Charu Jain
The Quality Mind set: From Destination to Journey
Continuous Integration
Nightly Build
Pair Programmin
g
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 TestingMock 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: Step1Integrated 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 2Managed Test Data Environment
FD Renewal(Interest
Calculation)
FD Master Information
Interest Rate
Automated validation
output against the expected results.
FD Renewal Certified
Additional Progression/RegressionParallel 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