WavebreakmediaMicro - Fotolia
Network virtualization is the ability to recreate some or all of the characteristics of a network in software. A virtualized network is used to connect the various application tiers, as well as outside services and application users. Think of network virtualization as a way to have most or all network services and behavior without plugging into the production network.
Testers can benefit from network virtualization because it provides for a more realistic way of testing an application. Rather than stub out network access points and simply return expected data, a virtualized network behaves like the real one, with similar policies, latencies and congestion.
With a virtualized network, testers have a fuller range of testing possibilities, including introducing delays, and bad or dropped packets, into the testing regimen. The advantage is that these are things that happen in real production environments, and knowing how the application responds before it gets to that point makes it less likely to fail in production.
Several commercial network virtualization products are available, from Ciena, Citrix and others, as well as a few open source projects. Some virtualize only the network protocol stack, while others virtualize everything but the physical wire, including routers and other network equipment. When choosing a product, look at how the features offered will map to application testing for multi-tier Web applications or similar network-dependent applications.
Network virtualization is related to the larger category of service virtualization, which virtualizes Web services and other application components that aren't exclusive to the application under development. Because many applications use third-party components for activities like video streaming, image delivery, special effects and real-time data, service virtualization is almost a necessity for ongoing testing before production. All of these approaches enable testers to develop and execute more realistic testing scenarios and deliver better tested software to production.
Test your virtualization knowledge
The basics of automated software testing
Dig Deeper on Mobile Application Testing Techniques and Tools
Related Q&A from Gerie Owen
I've been a tester for many years and want to progress professionally. Yet, I'm struggling to find chances for advancement and a career path in ... Continue Reading
There are numerous DevOps tools, so as a tester, is it necessary to know all of them? Gerie Owen explains why tools might come secondary to the goal ... Continue Reading
As a junior tester, I think learning scripting languages could make me more valuable to my team and enhance my career. But how do I pick the ... Continue Reading
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.