Parasoft's service virtualization removes the following functional testing roadblocks:
Accessing constrained components at convenient times—without exorbitant costs
With complex, distributed computing environments or composite applications, it's not uncommon to have at least some components that lie beyond your control—either in the realm of other teams, divisions, or possibly even third parties. This makes it considerably more challenging to build end-to-end tests that span across the system under test. Other components might still be evolving when your own component is ready for testing. And even when components are completed, access to third-party systems/services or shared testing environments is usually tightly-scheduled and granted at limited and inconvenient time windows, such as 2 am to 4 am on Saturday morning. Adding to the ordeal, transaction and bandwidth fees are often incurred when accessing third-party resources or mainframes.
With Parasoft Virtualize, the behavior of constrained components can be captured as virtual assets, then functional tests can run against the virtual asset rather than a live or staged asset. Deployed in this manner, the virtual assets can be accessed without scheduling issues and without incurring access fees.
Setting up the desired behavior
Once you gain access to the desired resource in a staged test environment, you need to set it to the appropriate state. In the best case scenario, you have some freedom to configure its behavior—but doing so would consume part of your limited testing time. More commonly, you have a limited degree of control over how the component behaves and can produce only a limited range of conditions (for example, expected responses but not unexpected responses or fault conditions).
With Parasoft Virtualize, you can use GUI controls to easily configure virtual assets to reproduce the specific conditions critical for completing dev/test tasks. For example, you can configure various error, failure, and performance conditions that are difficult to reproduce or replicate with real systems. By adding data sources and providing conditional response criteria, you can tune the virtualized asset to function as expected—or as unexpected (for negative testing). This helps the team validate the full range of system behavior—including its ability to respond correctly (or at least fail gracefully) in various exceptional situations.
Standing up different environment permutations
Test plans commonly require that tests be exercised against a number of different environment scenarios. For instance, the same functional test might
need to be run against a component delivering expected responses, unexpected responses, and no response. And to truly assess the AUT's functionality,
the test plan might call for the test to run with all possible permutations of dependent component behaviors.
Parasoft's Environment Manager simplifies this process. From Environment Manager's intuitive graphical interface, testers can direct which
state (real or virtual, which performance profiles, which data sources, etc.) a dependent component should adopt in any instance. Environment
Manager also enables rapid, simple creation of test environments with all necessary permutations of dependent component behaviors.
Within Environment Manager, testers can select the specific environment instances they need, then instantly provision the environment
that allows them to immediately start testing. There's no need to wait for Ops/ DevOps.