How could Service Virtualization enhance your Agile Testing Strategy?
How often you push your “Phone Updates” to a later date as an update install means your phone would not be available to work. Even though the updates just take a couple of minutes, but in a fast-paced world where a minute delay could mean a lot, non-availability of services for a fraction of seconds frustrate you.
Often the similar situation is faced by a Tester/QA while performing his daily testing jobs – environments are not up, dependencies are ambiguous, developers/business users need the SIT environment and ‘n’ number of such reasons.
That’s where Service Virtualization comes into the picture!
In fact, Service Virtualization is all about continuity and boosting agility!
What is Service Virtualization?
Service Virtualization in laymen terms is providing services in a virtual manner. Just like on the internet you have virtual friends, virtual classroom or virtual 3D view of an art gallery, in a similar fashion the services exist for a tester/QA to test, but are not the real services.
Service Virtualization by its means simplifies the issues faced by a Service-Oriented Architecture [SOA] testing strategy. By providing a virtual set-up of services, it speeds up the testing and development process.
A quick example that I could think of is “market data” provided by Bloomberg, Reuters, ACTIVE, WOMBAT that is the lifeline of many investment firms. But for a tester to test the market data scenarios they are connected either with a simulator or a different service that stores the recorded data [ a replica of live data].
By connecting to a virtual service, testing is continuous, and the live environment does not get affected.
How Service Virtualization Could Enhance Agile Testing
Technology is making things simpler for the end users, but complexity is hidden beneath under wraps giving a tough time to developers and testers. Be it chatbots, Pokemon Go or a virtual reality venture showcasing you hotel suites from your living room, the building/testing of tools and apps is not simple enough. To streamline the testing/developing process service virtualization when combined with #Agile becomes handy –
- Get Continuous – Bid goodbye to delays and waiting time for services from production, DevOps could now leverage virtual services and boost continuous testing.
- Integration is Seamless – With virtual services present at your disposal, integration testing is just a matter of connection and few clicks.
- Real Time Analysis – With virtual services, the analysis could be done real time helping in finding issues at an early stage.
- Cost Efficient – With increased complexity of components, simulating them for development/testing environment could be a risky affair. Service virtualization helps in reducing that cost but still provides the benefit of a real-life scenario.
- Enables Parallel Testing – With virtual services, testers/QA could test the pre-prod/UAT environment in parallel accelerating time-to-market and providing a quality software.
- Competitive Advantage – With Service Virtualization firms could process parallel development, quick fixes and boost quality that provides an added benefit when compared to companies following the linear development strategy.
- Good fit to ever changing requirements – In agile when requirements are ever-evolving, virtual services with their flexibility and easy-to-use parameters helps in maintaining the continuity and still follow the Agile process.
- Collaborate, Share and Grow – With multiple teams working on the assets, it gets tough to share the resources in Agile, but service virtualization facilitates on-demand access to resources anytime to any group.
- Test anytime – With virtual services you can test anytime, be it functional, integration or performance testing.
As in our last post, we saw “ The Best Practices of Continuous Agile Testing” we know continuity is the key for any software/tool to survive. With service virtualization, we are a step closer to make it continuous agile and quality-assured!