Service Virtualization
Service virtualization creates a simulated version of a dependent system's behavior — mimicking its responses, timing, and even failure modes — so testing can proceed without the real dependency being available, stable, or cheap to call repeatedly. It's mocking's more sophisticated, environment-level cousin.
Where a mock typically replaces one function or class in a single test, service virtualization operates at the network or environment level — standing in for an entire external system (a third-party payment provider, a partner API with rate limits, a legacy mainframe) that a whole test environment depends on, not just one test.
It's especially valuable when the real dependency is expensive to call (a paid third-party API), difficult to put into specific states on demand (simulating a payment decline), or simply unavailable in a given environment — letting integration and system testing proceed realistically without those real-world constraints blocking progress.