DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports Events Over 2 million developers have joined DZone. Join Today! Thanks for visiting DZone today,
Edit Profile Manage Email Subscriptions Moderation Admin Console How to Post to DZone Article Submission Guidelines
View Profile
Sign Out
Refcards
Trend Reports
Events
Zones
Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
  1. DZone
  2. Culture and Methodologies
  3. Agile
  4. How to Make Service Virtualization a Reality for Testers

How to Make Service Virtualization a Reality for Testers

Service virtualization lets you automatically execute tests even when the app’s dependent system components can't be properly accessed or configured for testing.

Jessica Wanivenhaus user avatar by
Jessica Wanivenhaus
·
Mar. 30, 17 · Opinion
Like (9)
Save
Tweet
Share
6.27K Views

Join the DZone community and get the full member experience.

Join For Free

The first time that most software testers hear the term “service virtualization,” they immediately think of server virtualization (i.e., VMware). Server virtualization is undeniably a valuable tool for creating and maintaining test environments, but service virtualization is something altogether different.

Service virtualization is the simulation of interfaces — not the virtualization of systems. Service virtualization lets you automatically execute tests even when the application under test’s dependent system components (APIs, third-party applications, etc.) cannot be properly accessed or configured for testing.

By simulating these dependencies, you can ensure that your tests will encounter the appropriate dependency behavior and data each and every time that they execute. It’s commonly used when integration tests or end-to-end tests need to interact with dependent system components that are:

  • Unreliable, evolving, or not yet completed.
  • Beyond your scope of control (i.e., operated by another company or division).
  • Available for testing only in limited capacity or at inconvenient time.
  • Challenging to provision or configure in a test environment.
  • Simultaneously needed by different teams with varied test data setup and other requirement.
  • Too restricted or costly to use for automated regression testing.

Service virtualization has become recognized as one of the best ways to speed up testing and accelerate your time to market. In a recent Gartner research note, A Guidance Framework for Testing Web APIs, Gartner Analyst Sean Kenefick talked about the importance of finding performance issues and bugs earlier in the software development process by using service virtualization. Kenefick emphasized that simulating an entire application environment where missing applications or third-party applications have been virtualized ensures fast feedback loops, and ensures that you have the right tools for continuous testing.

In short, service virtualization holds tremendous potential to help testers boost test automation and keep pace with Agile and DevOps demands. If you’re being pressured to test faster and/or earlier in each release cycle (i.e., “shift left”), I encourage you to learn more about service virtualization and decide if it could help you advance your team’s Continuous Testing efforts.

Interestingly, although service virtualization has been around for years now, it’s more “virtual reality” than “real reality” for many software testers — even those whose organizations have already deployed service virtualization tools. In theory, service virtualization is all about removing constraints for software testing. In reality, many testers have found that service virtualization falls short of its promise to end delays and provide them direct ad easy control over the test environment — especially for stateful tests interacting with multiple dependencies.

One promising solution for making Service Virtualization more than a virtual reality for testers is a new approach called test-driven service virtualization, referring to service virtualization performed in the context of a test and architected for the needs of a tester.

Service virtualization Virtualization Web Service Test data application Software development Software development process agile Pipeline (software)

Published at DZone with permission of Jessica Wanivenhaus, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

Popular on DZone

  • How to Configure AWS Glue Job Using Python-Based AWS CDK
  • Using JSON Web Encryption (JWE)
  • Handling Virtual Threads
  • How to Use MQTT in Java

Comments

Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 600 Park Offices Drive
  • Suite 300
  • Durham, NC 27709
  • support@dzone.com
  • +1 (919) 678-0300

Let's be friends: