awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
vcr avatar

vcr/vcr

0
View on GitHub↗
6,070 stars·508 forks·Ruby·14 viewsbenoittgt.github.io/vcr↗

Vcr

VCR is a Ruby library that records and replays HTTP interactions during test runs, storing them in serialized cassette files. It captures real HTTP requests and responses, then serves those recorded responses instead of making actual network calls, enabling fast and deterministic test suites that work offline.

The library provides configurable request matching, allowing comparisons based on method, URI, host, path, body, or headers to find the correct recorded response. It supports scheduled cassette re-recording to automatically refresh stored interactions at a configurable interval, keeping test data current with live services. VCR also includes sensitive data filtering to strip or replace confidential information from recordings before saving them to disk, and blocks any HTTP requests that are not explicitly allowed or recorded in a cassette.

Recorded interactions can be serialized in YAML or JSON format, with support for custom serializers. The library is installed as a Ruby gem and integrates with common Ruby testing frameworks.

Features

  • HTTP Interaction Replayers - Replays recorded HTTP interactions from serialized cassette files to eliminate network calls in tests.
  • Request Matching - Compares incoming HTTP requests against recorded ones using method, URI, host, path, body, or headers.
  • Composable Request Matchers - Compares incoming requests against recorded ones using method, URI, host, path, body, or headers.
  • HTTP Interaction Recording - Captures real HTTP requests and responses during test runs and saves them to cassette files.
  • HTTP Traffic Recording - Captures real HTTP requests and responses during test runs to replay them later for fast, deterministic tests.
  • Sensitive Data Redaction - Strips or replaces confidential information from recorded HTTP interactions before saving them to disk.
  • Cassette Refresh Schedulers - Automatically re-records HTTP interactions at a configurable interval to keep test cassettes current.
  • Cassette Refresh Schedulers - Refreshes recorded HTTP interactions automatically at a configurable interval to keep them current.
  • Request Matching Engines - Matches incoming requests against recorded ones using method, URI, host, path, body, or headers.
  • Unallowed HTTP Request Blockers - Prevents any HTTP request not explicitly allowed or recorded in a cassette from being executed.
  • Test Request Blockers - Prevents any HTTP request not explicitly allowed or recorded in a cassette from being executed.
  • Scheduled Cassette Re-recorders - Automatically refreshes recorded HTTP interactions at a configurable interval to keep test cassettes current.
  • Request Interception and Blocking - Blocks unallowed HTTP requests during tests to prevent unintended network calls.
  • Unallowed HTTP Request Blockers - Prevents any HTTP request not explicitly allowed or recorded in a cassette from being executed.
  • Ruby Frameworks and Tools - Records and replays HTTP interactions for testing.
  • Testing - Records and replays HTTP interactions.
  • Testing and Service Virtualization - Library for recording and replaying HTTP interactions in test suites.

Star history

Star history chart for vcr/vcrStar history chart for vcr/vcr

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Vcr

Similar open-source projects, ranked by how many features they share with Vcr.
  • nock/nocknock avatar

    nock/nock

    13,103View on GitHub↗

    nock is a Node.js HTTP mocking library and request interceptor. It captures outgoing network traffic to specific hosts and paths, returning predefined responses to decouple applications from external servers during automated testing. The project functions as an API expectation framework to verify that specific calls were made with correct parameters. It includes a traffic recorder that captures real network interactions as fixtures for playback and a network simulation tool to introduce artificial latency or trigger network errors. Its capabilities cover request matching via hostnames, paths

    JavaScripthttpjavascriptmock
    View on GitHub↗13,103
  • symfony/http-foundationsymfony avatar

    symfony/http-foundation

    8,630View on GitHub↗

    Symfony HttpFoundation is an object-oriented library that models HTTP requests and responses as structured objects, wrapping PHP superglobals into typed parameter bags and providing dedicated objects for headers, cookies, and file uploads. It serves as the foundational layer for building HTTP-based applications in PHP, offering a complete abstraction for reading request data, constructing responses, and managing the full request-response lifecycle. The library distinguishes itself through composable request matchers that check incoming requests against conditions like IP, method, host, or pat

    PHPcomponentphpsymfony
    View on GitHub↗8,630
  • netflix/pollyjsNetflix avatar

    Netflix/pollyjs

    10,253View on GitHub↗

    Pollyjs is an HTTP mocking and recording library designed to capture and replay network interactions to create deterministic tests. It functions as a request interceptor and stubbing framework that records real API responses into files, ensuring consistent test results across different environments without relying on live network servers. The tool utilizes pluggable network adapters to support various environments and employs a state-based mode switching system to toggle between recording, replaying, and stubbing behaviors. It uses pattern-based request matching and persistent interaction sto

    JavaScriptbrowserjavascriptnetflix
    View on GitHub↗10,253
  • wiremock/wiremockW

    wiremock/wiremock

    7,281View on GitHub↗

    WireMock is a suite of tools for service virtualization, providing mock servers for HTTP APIs and WebSocket communication. It serves as an HTTP API mock server and request verifier, allowing for the simulation of responses and the interception of network requests to test client applications without a live backend. The project differentiates itself through a service virtualization model that records real network traffic and replays it as stubs to mimic external service behavior. It includes a network fault injector to simulate response delays and connectivity issues, and a stateful scenario ma

    Java
    View on GitHub↗7,281
See all 30 alternatives to Vcr→

Frequently asked questions

What does vcr/vcr do?

VCR is a Ruby library that records and replays HTTP interactions during test runs, storing them in serialized cassette files. It captures real HTTP requests and responses, then serves those recorded responses instead of making actual network calls, enabling fast and deterministic test suites that work offline.

What are the main features of vcr/vcr?

The main features of vcr/vcr are: HTTP Interaction Replayers, Request Matching, Composable Request Matchers, HTTP Interaction Recording, HTTP Traffic Recording, Sensitive Data Redaction, Cassette Refresh Schedulers, Request Matching Engines.

What are some open-source alternatives to vcr/vcr?

Open-source alternatives to vcr/vcr include: nock/nock — nock is a Node.js HTTP mocking library and request interceptor. It captures outgoing network traffic to specific hosts… symfony/http-foundation — Symfony HttpFoundation is an object-oriented library that models HTTP requests and responses as structured objects,… netflix/pollyjs — Pollyjs is an HTTP mocking and recording library designed to capture and replay network interactions to create… wiremock/wiremock — WireMock is a suite of tools for service virtualization, providing mock servers for HTTP APIs and WebSocket… getsentry/responses — Responses is a Python mocking library designed to intercept outgoing HTTP calls made with the Requests library to… goldbergyoni/nodejs-testing-best-practices — This project is a comprehensive guide and collection of best practices for testing Node.js backend applications. It…