Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Testing
  3. WireMock

WireMock

Apache-2.0Java3.13.2

A flexible open-source tool for mocking HTTP services to create stable test and development environments.

Visit WebsiteGitHubGitHub
7.2k stars1.5k forks0 contributors

What is WireMock?

WireMock is an open-source tool for mocking HTTP services that helps developers create stable test and development environments. It isolates teams from flaky third-party APIs and allows simulation of APIs that don't exist yet, supporting multiple programming languages and deployment methods.

Target Audience

Developers and QA engineers who need to mock external HTTP services for testing, development, or prototyping purposes, particularly in microservices and API-driven architectures.

Value Proposition

Developers choose WireMock for its flexibility, rich request matching system, multiple configuration options (code, JSON, REST API), and ability to run as a library, standalone server, or container—making it easy to integrate into any workflow.

Overview

A tool for mocking HTTP services

Use Cases

Best For

  • Creating stable test environments by mocking flaky third-party APIs
  • Simulating APIs that haven't been built yet during development
  • Recording and replaying HTTP traffic for test stub generation
  • Unit and integration testing of HTTP client code
  • Injecting faults and delays to test application resilience
  • Stateful API mocking for complex testing scenarios

Not Ideal For

  • Projects requiring built-in graphical user interface for mock management without external tools
  • Teams needing to mock non-HTTP protocols such as gRPC or WebSockets
  • Scenarios where zero-configuration, drop-in mocking solutions are preferred over setup and maintenance

Pros & Cons

Pros

Flexible Request Matching

WireMock's rich matching system allows precise criteria on URL, headers, and body content, enabling accurate mock responses based on complex request patterns, as detailed in its features.

Versatile Configuration Options

Supports configuration via fluent Java API, JSON files, and JSON over HTTP, making it adaptable to different development workflows and testing environments, per the README.

Easy Stub Generation

The record/playback feature automatically generates stubs by proxying and recording HTTP traffic, simplifying mock creation from real API interactions, as highlighted in the key features.

High Extensibility

With numerous extension points and comprehensive APIs, WireMock can be customized and integrated into any workflow, ensuring flexibility for complex scenarios.

Cons

Limited Advanced Features

Advanced capabilities like OpenAPI support and dynamic state are reserved for the paid WireMock Cloud, as mentioned in the README, limiting the open-source version's functionality.

Configuration Complexity

Initial setup and maintenance require more effort compared to lighter mocking tools, which might be a barrier for teams seeking quick, out-of-the-box solutions.

Community-Reliant Support

While documentation exists, users often need to rely on the Slack community for help, indicating potential gaps in official documentation for edge cases, as noted in the README.

Frequently Asked Questions

Quick Stats

Stars7,213
Forks1,497
Contributors0
Open Issues423
Last commit2 days ago
CreatedSince 2011

Tags

#rest#java-library#integration-testing#http#api-mocking#java#mock-server#mocking#testing#xml#service-virtualization#test-automation#json#stubbing#apis#http-mocking

Built With

J
Java

Links & Resources

Website

Included in

Testing2.2k
Auto-fetched 1 day ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub