Unleash Service Virtualization: Reduce Testing Delays


Published on

The ability to rapidly release new product features is vital to the success of today’s businesses. To accelerate development, teams are adopting agile practices and leveraging service-oriented architectures to integrate legacy applications with other systems. At the same time, testing these composite applications can take longer and cost more. Al Wagner explains the whys and hows of service virtualization and explores ways testers can employ this technology to simulate parts of complex systems and begin testing earlier. Join Al to gain insights on which services to virtualize in order to maximize your ROI. Discover how testing at the API layer can isolate defects for faster remediation and avoid late stage integration issues. Stop waiting until the complete application is available in a test environment to begin your work. Leave with an understanding of how virtual components can make incomplete or unavailable application functionality available for testing.

Published in: Technology, Education
  • Be the first to comment

  • Be the first to like this

Unleash Service Virtualization: Reduce Testing Delays

  1. 1. T3 Test Automation 5/2/2013 9:45:00 AM Unleash Service Virtualization: Reduce Testing Delays Presented by: Allan Wagner IBM Software - Rational Brought to you by: 340 Corporate Way, Suite 300, Orange Park, FL 32073 888-268-8770 ∙ 904-278-0524 ∙ sqeinfo@sqe.com ∙ www.sqe.com
  2. 2. Allan Wagner Allan Wagner is a technical marketing manager and evangelist with IBM Rational, driving thought leadership, strategic initiatives, and tangible solutions around the adoption of Rational ALM for IT and manufactured products. Focusing specifically on quality, requirements, and test management during his ten years of practical field experience, Al has assisted, mentored, and enabled both internal IBM and external customer teams to address their IT application infrastructure, development, implementation, and operations challenges. Al is a frequent conference speaker on topics of software quality products, principles, and techniques and has authored numerous papers.
  3. 3. Unleash Service Virtualization Reduce Testing Delays SC051 Al Wagner awagner@ca.ibm.com Technical Marketing Manager © 2006 IBM Corporation IBM Rational Software “Unleash Service Virtualization” agenda  What?  Why?  How?  When and Where? 2
  4. 4. IBM Rational Software Service Virtualization is…  a method to emulate the behavior of specific and performance of components in heterogeneous component-based specific components in heterogeneous component-based applications such as service-oriented architectures. applications such as service-oriented architectures.  used to provide software development and QA/testing teams access to dependent system components that are needed to exercise an application under test (AUT), but are unavailable or difficult-to-access for development and testing purposes. 3 IBM Rational Software Service Virtualization enables you to create “virtual components” which… can simulate the behavior of an entire application or system during testing. can run on commodity hardware, private cloud, public cloud. allow each developer, tester to have their own test environment. allow developers, testers to continue using their testing tools (Manual, Web performance, UI test automation). 4
  5. 5. IBM Rational Software “Unleash Service Virtualization” agenda  What?  Why?  How?  When and Where? 5 IBM Rational Software Complexity  Multiple layers of technology  Multiple vendor platforms  Complex transactions  Complex dependencies  Multiple stakeholders 6
  6. 6. IBM Rational Software Testing this complexity is hard!  Application complexity is exploding:  Mainframe (one interface)  Client Server (a few interfaces)  Web/SOA/Cloud apps (100’s of interfaces)  Development and Test teams are getting larger and more geographically disperse.  Costs are escalating and quality is suffering.  Waterfall models and serial projects are out, agile and continuous testing are in. A new approach is required to keep up! 7 IBM Rational Software And yet, we test the same way Do you know what’s under the surface? 8 8
  7. 7. IBM Rational Software The black box approach… 9 IBM Rational Software What if you don’t have all the pieces? 10 10
  8. 8. IBM Rational Software Blockers of early end to end testing… “We’re still waiting for them to deploy?” “It is too expensive to setup a live message feed for test!” “The environment refresh takes 3 weeks!!” “Can we begin testing before everything is available?” “The dev team hasn’t started work on it yet!” 11 IBM Rational Software I just spent 2 weeks Does your organization look like this? Write & deliver code Nightly build(s) setting this up & the build is no good?? Compile, unit test, publish Setup integration test environment Developer Developer Developer Developer Developer Developer Tester When agility stops at integration install & configure N days to testing, the entire organization hits the wall Iteration 1 Design, Code, Test Weeks 2 - 6 Iteration planning Week 7 Iteration 2 Design, Code, Test Weeks 8 -12 Integration test iteration #1 Iteration planning Week 1 N nightly builds are piling up 12 Integration test iteration #2 SVT prep Integration Testing lags a step behind the code
  9. 9. IBM Rational Software Service Virtualization brings opportunities Challenges Quality  Inadequate testing and test environments Opportunities  Drive testing earlier, discover defects early when they are cheaper to correct  Defect escapes  Automate testing that matters freeing up resources for other value add activities  Test data consistency  Improve resource governance and control Cost  Escalating labor costs  Reduce infrastructure required to develop and test applications  High cost of defect fixes  Increase resource flexibility and availability  Poor asset utilization  Improve asset utilization Time To Market  Long cycle times  Availability of resources  Provide rapid delivery of services  Allow testing when only portions of the final solution are available  Increase levels of testing 13 13 IBM Rational Software “Unleash Service Virtualization” agenda  What?  Why?  How?  When and Where? 14
  10. 10. IBM Rational Software Ad-hoc stubs or “mocks”?  What is an ad-hoc stub or “mock”? – A piece of code used to stand in for some other programming functionality. – A stub may simulate the behavior of existing code or be a temporary substitute for yet-to-be-developed code.  This approach is: • Labor intensive to write and maintain mocks. • Requires deep knowledge of both technology and the business logic to be emulated. • Requires changes to application configuration when switching to live services for testing. • Hard to share across the entire team. 15 IBM Rational Software Six steps to Service Virtualization success Discover Configure  Identify testing painpoints  Understand IT technologies  Review Use cases  Initiate ROI Analysis  Understand testing methodology  Install and configure AV software  Configure transactions / Protocols  Configure Services  Build additional AV test cases 16 Virtualize  Execute specified test cases  Listen and capture transactions  Build negative test case  Refine ROI Model Deploy  Model  Deploy behavior of models to transactions virtual environment  Model negative test  Configure cases SUT connections  Model “perfect storm” test cases  Apply production metrics to virtual models Execute  Execute specified test cases  Capture test results  Capture and measure results  Recommend AV next steps
  11. 11. IBM Rational Software Discovering what to virtualize Technology Component Impact of Unavailable Complexity Score Protocol and message format Component Name Dollar cost of impact Scaling Factor (1-10, low – high) Web Service Soap over http Credit Check Service $10,000 2 Web Service Soap over http Payment Service $60,000 2 SAP Journal Entry $100,000 6 Examples: 17 IBM Rational Software Virtualizing the “real” behavior Category Simple Hard-coded response returned for given input Non-deterministic One-of-n hard-coded responses Data driven Input and/or output data specified in external data source (Excel, file, database) Data model, stateful Input and/or output data kept in data model with complex relationships. Supports CRUD and other stateful behaviour Behavioural 18 Detail Extends model-driven to provide pre-packaged functionality, e.g. shopping basket, real-time data feed, trading exchange, order matching
  12. 12. IBM Rational Software Listen and capture the behavior Physical Test Environment Maintenance Constraints Listen / Capture Server/ Web Services 2hr. access window Mainframe / MQ/CICS Store System Under Test Volume Constraints Capture & Model Smart Device / SD-IO Web Services Test Case Repository MQ/CICS Volume Constraints Smart Devices Database / JDBC JDBC Virtual Environment 19 IBM Rational Software Build a system model from recorded events Queue.A Queue.A.Reply Queue.B Clients Queue.B.Reply Queue.C Queue.C.Reply 20 Application Servers
  13. 13. IBM Rational Software Build virtual components from design specs Turn specifications into virtual components HelloService 21 IBM Rational Software Synchronization helps respond to change  Synchronization provides an interface for importing project assets, and mirroring updates to those assets. 22
  14. 14. IBM Rational Software Service Virtualization allows you to…  Eliminate critical development and testing constraints by virtualizing IT resources  Deliver realistic simulated development and test environments at a fraction of the cost  Isolate defects and drill into their root cause  Create automated regression test suites to reduce test cycle time and improve test coverage and quality  Leverage Cloud services with Service Virtualization to minimize infrastructure set-up time and provide scalable, ondemand infrastructure  Drive benefits across the entire application development and test lifecycle 23 IBM Rational Software “Unleash Service Virtualization” agenda  What?  Why?  How?  When and Where? 24
  15. 15. IBM Rational Software Service Virtualization across the SDLC Developer uses virtual services to unit test code on their workstation – no elaborate environment required Define constrained systems and services for virtualization Unit Integration Development and Test teams uses virtual services for early stage advanced testing System System Integration User Acceptance Operability Operability Performance The full system or components of the system can be performance tested early in the cycle. Virtual services can be used when components are not available Later in the cycle, final preproduction versions of services are swapped in as they become available. Final testing is done against real services 25 IBM Rational Software The old world Quality Gate Requirements Big Bang Unit Tests Sys Tests UAT • Multiple defects introduced at once • More unknowns – greater risk • More expensive 26 OT Performance
  16. 16. IBM Rational Software The new world • Accelerates testing • Reduces costs • Lowers risk Requirements Big Bang Unit Tests Integration Tests Sys Sys Tests Tests UAT OT Performance Shift testing to the left! 27 IBM Rational Software Incremental integration testing example C1 Test my own piece Real C3 ERP WSDL V C2 3rd party V • Test C1 with three virtualized services. • Quick to setup and low-cost. • Author integration tests early 28 Database V Pass/Fail 
  17. 17. IBM Rational Software Incremental integration testing example C1 Time C3 3rd party Database Pass/Fail ERP WSDL V C2 V V  Test my own piece Real Integrate w/another Real R V V V  This won’t slow me down! Real V V V V  First Complete System Test Real V V V V V V  All components Integrated! Real R R V V V V  29 IBM Rational Software Incremental integration testing example Time Test my own piece Integrate w/another This won’t slow me down! First Complete System Test All components – Integrated! The expensive backend All Systems UP! 30 C1 Real C2 C3 ERP WSDL V V 3rd party Database • Gradually integrate with expensive Real R V backend systems. V • systems for RealMinimize use of backend V V V testing purposes V Real V V V V • Process offers easy and cost effective Real R R V V V defect isolation • RealIntegration tests are written and V R R R R executed earlier R Real R R R R Pass/Fail V  V  V  V  V  V  R 
  18. 18. IBM Rational Software Changing the performance test model PREDICTIVE ASSESSMENT MONITORING Requirements Design Coding SIT UAT Production ASSESSMENT Low Intensity Performance Testing (LIP) High Intensity Performance Testing (HIP) Incremental integration strategy defines HIP start point; focus of HIP is informed by LIP results 31 IBM Rational Software Streamline your process – test continuously  Avoid time spent installing and configuring software just to discover basic build issues  Smoke tests can be integrated as part of the continuous integration process through deployment automation and service virtualization  Regression test results are made available to the entire team to shorten resolution Cloud Environment CRM Order Mgr Virtual Lab VM Manager Catalog Build Assets 32 App Server Virtual Machines •Smoke Tests •Sandboxes •Self-provisioning Product Increment
  19. 19. IBM Rational Software http://ibm.co/servicevirtualization 33 IBM Rational Software © Copyright IBM Corporation 2012. All rights reserved. The information contained in these materials is provided for informational purposes only, and is provided AS IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, these materials. Nothing contained in these materials is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. References in these materials to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in these materials may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. IBM, the IBM logo, Rational, the Rational logo, Telelogic, the Telelogic logo, and other IBM products and services are trademarks of the International Business Machines Corporation, in the United States, other countries or both. Other company, product, or service names may be trademarks or service marks of others. 34