bblimke/webmock

Library for stubbing and setting expectations on HTTP requests in Ruby.

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 48 minutes ago
Added to GitGenius on September 17th, 2026
Created on November 6th, 2009
Open Issues & Pull Requests: 179 (+0)
GitHub issues: Enabled
Number of forks: 580
Total Stargazers: 4,049 (+0)
Total Subscribers: 41 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 33.6 hours
Mean response time: 86.9 days
90th percentile: 184.8 days
Tracked items: 40

Most active contributors

Sign in to see contributor activity.

How this project is maintained

100% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Three people close 57% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 24
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 1,497 days
Stale 30+ days: 24
Stale 90+ days: 24

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • Enhancement (2)
  • Bug (1)
  • Feature (1)
  • PR welcome (1)
  • Update Documentation (1)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

WebMock is a library for stubbing and setting expectations on HTTP requests in Ruby.

WebMock solves the problem of testing code that makes HTTP calls by intercepting requests at the HTTP client library level and allowing developers to stub responses and verify that requests were made as expected. Rather than making real network calls during tests, the tool intercepts requests before they reach the network, enabling fast, isolated test execution. It supports matching requests by method, URI, headers, and body, with intelligent matching that handles different representations of the same URI or headers, such as encoded versus non-encoded forms.

The tool suits any Ruby project that makes HTTP requests and needs to test that code without hitting real endpoints. It works with multiple testing frameworks including RSpec, MiniTest, Test::Unit, and Cucumber, and integrates with numerous HTTP client libraries ranging from the standard library Net::HTTP to specialized clients like Typhoeus, Excon, and HTTPClient. Developers can switch between HTTP libraries without rewriting tests, since WebMock stubs at a low level beneath the client library abstraction. The README does not name alternative libraries for comparison.

The project maintains broad compatibility across Ruby versions and interpreters. Development activity shows ongoing support for emerging Ruby releases and continued integration with new HTTP client libraries as they appear in the ecosystem.