| Approach |
Contract-First/Specification-Driven Development
Leverages API specifications (OpenAPI, gRPC proto, GraphQL schema, AsyncAPI, WSDL) as executable contracts
Transforms API specs into tests and mocks automatically without writing code |
Mock-First Approach
Primarily focused on creating flexible API mocks and stubs
Requires manual configuration of request-response mappings |
| Open Source |
YES – MIT License
• Fully open source CLI and core engine
• Studio and Insights are commercial offerings |
YES – Apache 2.0 License
• Fully open source
• WireMock Cloud is commercial offering |
| Language and platform agnostic |
YES – Specmatic is primarily a standalone executable
• JVM-based but runs independently
• Docker images available
• Language-agnostic approach
• Kubernetes operator |
YES Multiple Language Support
• Java library (primary)
• Python, .NET, Go, Rust adapters
• Standalone JAR
• Docker support |
| API Spec Support |
Native Support
• OpenAPI/Swagger
• AsyncAPI
• GraphQL Schema
• gRPC Proto files
• WSDL (SOAP)
Specs are treated as executable contracts |
Limited Support
• Basic OpenAPI import (WireMock Studio)
• Manual JSON mapping required
• No native AsyncAPI support
Primarily works with JSON request-response mappings |
| API Protocol Support |
Multi-Protocol
• HTTP/REST
• gRPC
• GraphQL
• Kafka
• JMS
• Google Pub/Sub
• JDBC
• Redis (RESP)
• SOAP |
HTTP-Focused
• HTTP/REST (Native)
• SOAP (via HTTP)
• gRPC (Extension)
• GraphQL (Extension)
• WebHooks/Callbacks
Limited non-HTTP protocol support |
| Loading OpenAPI Specifications from Git Repo |
YES – Direct Git integration
• Pull latest OpenAPI specs directly from Git
• Central Contract Repository support
• Automatic spec synchronization
• Version control integration |
NO – No Direct Git Integration
• Requires external utilities/scripts
• Manual spec loading via Admin API
May need shell scripts to pull specs from Git |
| Smart Mock |
YES – Continuously Validates Against Specs
• Auto-validates expectation data against OpenAPI specs
• Prevents mock drift
• Contract compliance enforcement
• Breaking change detection
Ensures mocks stay synchronized with API specifications |
NO – No Automatic Validation
• Mappings can go out of sync with API specs
• No validation against OpenAPI specifications
• Manual maintenance required
Changes to mapping JSON not validated against specs |
| Provider Verification |
YES – Contract Tests
• Runs OpenAPI spec as contract tests
• Verifies provider compliance with spec
• Ensures provider-mock alignment
• Automatic test generation |
NO – Requires External Tools
• Need integration with Dredd or PactFlow
• Export stubbed endpoints as OpenAPI
• Manual test setup required
No built-in contract testing capabilities |
| API Specifications as Test #NOCODE |
YES – Automatic Contract Tests
• Auto-generated from API specs
• No code required
• Generative testing with edge cases
• Backward compatibility validation
Specifications become executable test suites automatically |
NO – Manual Test Creation
• Requires manual test writing
• Custom verification code needed
No automatic test generation from specifications |
| API Specifications as Mock #NOCODE |
YES – Smart Service Virtualization
• Auto-generated from API specs
• Intelligent response generation
• Protocol-aware mocking
• Dynamic data generation
Specifications become fully functional service mocks |
NO – Manual Mock Configuration
• Requires JSON stub mappings
• Manual request-response definition
• Template-based responses
Flexible but requires manual configuration |
| Static Stubbing |
YES – OpenAPI-based API Mocking
• Unlimited expectations/canned responses
• Response mappings with request matching
• Spec-driven response generation
• Contract validation |
YES – Comprehensive Stubbing
• WireMock Studio supports OpenAPI import
• Faker-based generated responses
• Modifiable response mappings
No verification against OpenAPI spec compliance |
| Dynamic Stubbing |
YES – HTTP API Support
• Expectation JSON via HTTP API
• Runtime stub modification
• API-driven configuration
• Real-time updates |
YES – Admin API
• Admin API mappings endpoint
• POST mapping data dynamically
• Runtime stub management
• Full CRUD operations |
| DB / Storage Mocking |
YES – Database Stubbing
• JDBC stubbing
• Redis (RESP) mocking
• Database interaction virtualization
• SQL query stubbing
• JMS message stubbing
Native support for database and storage mocking |
NO – HTTP Only
• No native database support
• Only HTTP-based interactions
Limited to HTTP protocol mocking |
| Delay Simulation |
YES – Endpoint-Specific Delays
• Simulate delays per endpoint
• Request matching-based delays
• Configurable latency patterns
• Performance testing support |
YES – Flexible Delay Options
• Global or per-stub delays
• Randomization support
• Fixed and variable delays
• Fault injection capabilities |
| GUI Based Visual #NOCODE Testing |
YES – Specmatic Studio
• Visual API workflow testing
• No-code test configuration
• Contract compliance validation
• CI/CD integration
• Docker Desktop Extension
Complete visual interface for contract testing |
PARTIAL – Limited GUI
• WireMock Cloud (hosted version)
• Basic web UI for standalone
• Manual JSON configuration
Primarily code/JSON-based configuration |
| Proxy-Based OpenAPI Generation & Validation |
YES – Specmatic Proxy
• Records requests/responses to generate OpenAPI specs
• Generates stub data files
• Continuously validates recorded responses against specs
• Modifiable JSON stubs with spec verification
Intelligent recording with contract validation |
YES – Record & Playback
• Records stub data
• Export as OpenAPI specifications
• HTTP traffic capture
• Playback recorded interactions
General-purpose HTTP recording capabilities |
| Proxying Requests |
YES> – Spec-Aware Proxying
• Handles requests matching OpenAPI specs
• Proxies other requests to specified hosts
• Contract-driven request routing
• Selective proxy behavior |
YES – Flexible Proxying
• Selectively proxy requests to other hosts
• Conditional proxying
• Request/response modification
• Proxy stub mappings |
| Contract Conformance Report |
YES – Comprehensive Reports
• API coverage analysis
• Contract compliance reports
• Backward compatibility reports
• Test execution summaries
Detailed insights into contract adherence and test coverage |
PARTIAL – Basic Verification
• Request verification reports
• Mock usage statistics
Limited reporting on contract compliance |
| Unfragmented Devex / Minimal learning curve |
YES – You just need API Specification of your choice such as OpenAPI and Specmatic – no additional DSLs |
NO – Depedency on other tools to achieve Provider Verification can complicate the tooling |
| SSL Support – Handling https requests |
YES – Specmatic can generate self signed certs or you configure it to leverage your keystore |
YES You configure it to leverage your keystore |
|
Specmatic.io |
Wiremock.org |