1. Automated Testing and Test
Data Management – using
Service Virtualization
Kishore Bhatia
- DevOps Practice Lead
2. Kishore Bhatia, DevOps/Engineering Practices
2
Developer, SOA Architect with a passion for driving agility and efficiency in development and
operations teams across the Application Lifecycle management stack.
Technology: Agile practitioner and Enterprise Dev Engineering lead with a proven track record
leveraging agile concepts to develop value and consistently deliver results for Fortune 500 clients,
start-ups and the community.
Actively practicing TDD and creating Automation frameworks (continuous Build, Test, deploy,
monitor and measure) to enable Agile development.
Industry expertise: Financial Services, Telecommunications, Healthcare, High Tech.
Community: NY Tech Community, Users group (Java, Google), CD/DevOps and iMentor
www.linkedin.com/in/kishorebhatia/
Twitter - @BhatiaKishore
3. Agenda
Test Automation and Test Data Management challenges
Test Automation with Service Virtualization
Test Data Management with SV and Datafinder
3
4. Changes in software development
Mainframe
Client/Server
(including packaged
Apps such as SAP,
Siebel, Oracle…)
Composite
(Custom Applications,
SOA, Cloud)
1980 … 1985 … 1990 … 1995 … 2000 … 2005 … 2010 … 2015
Constraints
Complexity
Costs
Changes in software development
6. 6
Innovate or die
The Product is the entire brand and customer
experience
Service oriented products are delivered late, over
budget and with questionable quality…WHY?
8. 8
INCOMPLETE
DEVELOPMENT
The big problem: constraints
SYSTEM
UNAVAILABLE
INVALID DATA
ACCESS FEES
“I can’t do anything until I have everything… and I never have everything!”
9. Solution: service virtualization
Problems Solved:
1. Shift-Left 2. Infrastructure Availability 3. Performance Readiness 4. Test Scenario Management
10. 10
Problem: change & unintended consequences
UPSET
CUSTOMERS
SERVICE
DOWN
PRODUCTION
ISSUES
“Too many things go into production without adequate testing”
11. 11
Solution: continuous validation
Reduced issues in QA and reduce effort in integration release cycle
12. Challenges Summary
1. Unintended Consequences: Individual components and technologies are
changing at their own pace and create ripple effects across the architecture
12
2. Environment Management: Dependency on constrained internal and
external systems. Access and capacity constraints on key systems reduces
agility, and increases dependencies and costs between teams
3. Lack of Automated Testing: Traditional testing techniques cannot automate
testing against component and middleware-based workflows
4. Lack of Control: Governance techniques to dictate standards are useless due
to inability to enforce policies
13. 13
CA LISA: A Complete, Integrated Solution
LISA Virtualize LISA Test LISA Validate
Advanced UI
Testing
Functional
& Regression
LISA Framework
Continuous
Monitoring
LISA Product Suite
Capture &
Simulation
Pre-packaged
Integrations
LISA
SDK
Performance
Environment
Test Data
Automation
Load &
Performance
SOA Policy
Validation
Quality
Console
Workflow Pathfinder
Transparency
Defect
Collaboration
14. 14
Integration Testing with LISA
testing is no longer an event
4
Drive mobile using
LISA Test, MobileCloud
Setup SIT environment with
Continuous Delivery
3
Drive Web with
LISA Test
2
Drive headless APIs with
LISA Test
1
Watch for unintended consequences using
Continuous Validation Environment (CVE)
Eliminate constraints with
Service Virtualization
Integration Lab
15. 15
Registry MDM Transactions
Integration / Services Platform
LISA Continuous
Validation
Service
Plan
Internal
Service1
Data
Legacy App
Business outcomes
continuously
validated
App1 policy test
failed: Do not
deploy! Internal
Service2
APP 1
APP 2
LISA Continuous
Validation
Prevent unintended consequences
through Continuous Validation
16. 16
• LISA Test
• Functional Testing of APIs and Services
• Advanced UI Testing Capabilities with Selenium backend
• Support across platforms like SAP, TIBCO, WebM, IBM, and Oracle
• LISA MobileCloud
• Mobile Testing across all phases of SDLC
• Test with real devices in Cloud
• LISA DataFinder
• Solve Test Data Management challenges in end-to-end environments
• LISA CVE
• Continuous Validation using CVE integrated with various notification
mechanisms
LISA Test
API Testing
Advanced
Web UI Testing
Mobile Testing
SAP Testing
Continuous
Validation
LISA MobileCloud
Take Test Automation level to new heights
with LISA Test for API, Web and Mobile
17. 17
Setup Perf Env with
Continuous Delivery
1
Setup data with
Datafinder
Drive web load using
Cloud Test
3
Drive mobile using
LISA Test
4
2
Eliminate constraints with
Service Virtualization
Performance Testing with LISA
18. 18
Mobile Applications Testing
LISA Test, LISA Cloud Test & Service Virtualization
LISA Service
Virtualization
SUT
LISA Test
Live Backend
Systems
(CRM, ERP, ...)
Channels
Mobile
Gateway
Local
Messaging
Service
HUB
Applications
Notification
Service
Voice Media
Gateway
LISA Cloud Test
Load
Generator
Load …
Generator
Load
Generator
Load
Generator
21. 21
Data Obfuscation
Data Subsetting
Typical Test Data Management
Production Development
Good way to start a Golden copy. But...
22. TDM– Myriad use-cases
22
• Subsetting
• Ages almost immediately
• Developers and testers will build interesting data
• Bug scenario could be copied in from production
• Requests for a refresh!
• Whoops we’ve lost all our lovely juicy data
• Manual with schema refresh, additional Inserts/Updates– got it all?
• What about coverage?
• Lots of clever combinations!
• Add in “Bad” data
• Add in performance test data
• Min. data max. coverage
• Integration Testing Data
• Need to build integration data
• Coherent and matches with upstream and down stream systems
25. 25
Test
Test Data Warehouse with Data Finder
Database
Application UI
API Flat File
SOAP
DATA
OBJECTS
Data
Finder
VERSION
CONTROL
Test Data Warehouse
Data Design
Test Design
Coverage
DATA
INHERITANCE
Production
Database
26. End to End Tests
ERP Database SOA
Batch
Test Data Warehouse
API
Data Coverage Data Functions Data Inheritance Expected Results
Version Control
27. Thanks!
Links –
CA Application Delivery
Demos/Tutorials
Graphics Courtesy-
CA Technologies
Web
Editor's Notes
There is a fundamental shift in the way enterprises build applications today, and this is why CA LISA was created.
In the early days of Mainframe and Client/Server applications, you had a much more limited scope of applications – all of the components from the database to the UI could be under one development and testing teams’ control.
After the Dot-Com days of the early 2000s, a new style of Composite Applications arose which brought on the market need for CA LISA.
The new approach to developing software, including Agile, created to new challenges for organizations
Constraints created by the highly parallel develop efforts
And, dependencies on consistent behavior of the components in the system. These dependencies and complications drove complexity and cost of developing and maintaining composite applications.
Key Pain Points:
Painful releases
Inability to predict delivery affecting business commitments
Deployment to environments
Code quality
Environment configuration & management
Expensive, time consuming manual QA (unable to build lab) -Partial Agile implementation (Scrum but no technical processes)
“Software development providers can’t deliver new services at the rate business leaders want”
- Forrester Consulting
“Continuous Delivery: A Maturity Assessment Model”, March 2013
Delivery vs. Release
•Delivery: integrated, passing all stages of pipeline validation
•Release: accessible by customers and market
•Deliver continuously, release when business decides
•Requires latent code strategy (inherently latent code, abstraction, feature toggles, etc.)
Continuously making sure that changes in backend dependent systems don’t impact SUT
“Software development providers can’t deliver new services at the rate business leaders want”
- Forrester Consulting
“Continuous Delivery: A Maturity Assessment Model”, March 2013
Throwing Code off the wall - QA testing and Deployment