Download the PHP package qoliber/servermock without Composer
On this page you can find all versions of the php package qoliber/servermock. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download qoliber/servermock
More information about qoliber/servermock
Files in qoliber/servermock
Package servermock
Short Description Embedded HTTP mock server for PHP integration tests
License MIT
Informations about the package servermock
ServerMock
An embedded HTTP mock server for PHP integration tests. Inspired by Rust's wiremock crate and similar to WireMock, but runs entirely in PHP with no Docker or JVM required.
Installation
Quick Start
Bulk Configuration
Configure multiple stubs at once - great for complex test scenarios:
Scenarios
Create reusable test scenarios:
Or use the fluent API:
Load Configuration from Files
Auto-detect format by extension:
JSON
YAML (requires symfony/yaml)
TOML (requires yosymfony/toml)
PHP (native, supports dynamic values)
Array (programmatic)
Usage with PHPUnit
Using the Base Test Case
Using the Trait
Templated Responses
Dynamic responses based on request data:
Available template variables:
{{request.path}}- Request path{{request.method}}- HTTP method{{request.query.paramName}}- Query parameter{{request.header.HeaderName}}- Header value{{request.jsonBody.field}}- JSON body field (supports nesting:jsonBody.user.name){{uuid}}- Random UUID{{now}}- Unix timestamp{{nowIso}}- ISO 8601 timestamp{{randomInt}}- Random integer
GraphQL Support
Request Matchers
Path Matching
Header Matching
Query Parameter Matching
Body Matching
Responses
Response Sequences
Delay & Priority
Verification
Stateful Mocking (State Machine)
Create scenarios where responses change based on previous requests:
Fault Injection
Simulate network failures and errors for resilience testing:
CLI Tool
Run ServerMock as a standalone server:
Proxy Mode
Forward unmatched requests to a real server:
Why ServerMock?
| Feature | Guzzle MockHandler | Docker + WireMock | ServerMock |
|---|---|---|---|
| Real HTTP | No | Yes | Yes |
| No Docker | Yes | No | Yes |
| No JVM | Yes | No | Yes |
| Fast startup | Yes | No | Yes |
| Works with any HTTP client | No | Yes | Yes |
| Bulk configuration | No | Yes | Yes |
| File-based config | No | Yes | Yes |
| Stateful mocking | No | Yes | Yes |
| Fault injection | No | Yes | Yes |
| CLI standalone | No | Yes | Yes |
Requirements
- PHP 8.1+
License
MIT
Credits
Developed by Qoliber
All versions of servermock with dependencies
guzzlehttp/guzzle Version ^7.0
psr/http-message Version ^1.0 || ^2.0
react/http Version ^1.9
react/socket Version ^1.15