mirror of
https://github.com/wiremock/WireMock.Net.git
synced 2026-01-14 15:43:33 +01:00
75 lines
5.6 KiB
Markdown
75 lines
5.6 KiB
Markdown
# WireMock.Net
|
|
A C# .NET version based on [mock4net](https://github.com/alexvictoor/mock4net) which mimics the functionality from the JAVA based [WireMock.org](http://WireMock.org).
|
|
|
|
## Key Features
|
|
* HTTP response stubbing, matchable on URL/Path, headers, cookies and body content patterns
|
|
* Runs in unit tests, as a standalone process, as windows service, as Azure or IIS or as docker
|
|
* Configurable via a fluent DotNet API, JSON files and JSON over HTTP
|
|
* Record/playback of stubs
|
|
* Per-request conditional proxying
|
|
* Stateful behaviour simulation
|
|
* Configurable response delays
|
|
|
|
## Info
|
|
| | |
|
|
| --- | --- |
|
|
| ***Project*** | |
|
|
| **Chat** | [](https://gitter.im/wiremock_dotnet/Lobby) |
|
|
| **Issues** | [](https://github.com/WireMock-Net/WireMock.Net/issues) |
|
|
| | |
|
|
| ***Quality*** | |
|
|
| **Build Azure** | [](https://stef.visualstudio.com/WireMock.Net/_build/latest?definitionId=7) |
|
|
| **CodeFactor** | [](https://www.codefactor.io/repository/github/wiremock-net/wiremock.net)
|
|
| **Sonar Quality Gate** | [](https://sonarcloud.io/project/issues?id=wiremock) |
|
|
| **Sonar Bugs** | [](https://sonarcloud.io/project/issues?id=wiremock&resolved=false&types=BUG) |
|
|
| **Sonar Code Smells** | [](https://sonarcloud.io/project/issues?id=wiremock&resolved=false&types=CODE_SMELL) |
|
|
| **Sonar Coverage** | [](https://sonarcloud.io/component_measures?id=wiremock&metric=coverage) |
|
|
| **Codecov** | [](https://codecov.io/gh/WireMock-Net/WireMock.Net) |
|
|
| **Coveralls** | [](https://coveralls.io/github/WireMock-Net/WireMock.Net?branch=master) |
|
|
| |
|
|
| ***NuGet*** | |
|
|
| **WireMock.Net** | [](https://www.nuget.org/packages/WireMock.Net) |
|
|
| **WireMock.Net.StandAlone** | [](https://www.nuget.org/packages/WireMock.Net.StandAlone) |
|
|
| ***MyGet (previews)*** | |
|
|
| **WireMock.Net** | [](https://www.myget.org/feed/wiremock-net/package/nuget/WireMock.Net) |
|
|
| **WireMock.Net.StandAlone** | [](https://www.myget.org/feed/wiremock-net/package/nuget/WireMock.Net.StandAlone) |
|
|
|
|
## Development
|
|
For the supported frameworks and build information, see [this](https://github.com/WireMock-Net/WireMock.Net/wiki/Development-Information) page.
|
|
|
|
## Stubbing
|
|
A core feature of WireMock.Net is the ability to return predefined HTTP responses for requests matching criteria.
|
|
See [Wiki : Stubbing](https://github.com/WireMock-Net/WireMock.Net/wiki/Stubbing).
|
|
|
|
## Request Matching
|
|
WireMock.Net support advanced request-matching logic, see [Wiki : Request Matching](https://github.com/WireMock-Net/WireMock.Net/wiki/Request-Matching).
|
|
|
|
## Response Templating
|
|
The response which is returned WireMock.Net can be changed using templating. This is described here [Wiki : Response Templating](https://github.com/WireMock-Net/WireMock.Net/wiki/Response-Templating).
|
|
|
|
## Admin API Reference
|
|
The WireMock admin API provides functionality to define the mappings via a http interface see [Wiki : Admin API Reference](https://github.com/StefH/WireMock.Net/wiki/Admin-API-Reference).
|
|
|
|
## Using
|
|
WireMock.Net can be used in several ways:
|
|
|
|
### UnitTesting
|
|
You can use your favorite test framework and use WireMock within your tests, see
|
|
[Wiki : UnitTesting](https://github.com/StefH/WireMock.Net/wiki/Using-WireMock-in-UnitTests).
|
|
|
|
### As standalone process / console application
|
|
This is quite straight forward to launch a mock server within a console application, see [Wiki : Standalone Process](https://github.com/StefH/WireMock.Net/wiki/WireMock-as-a-standalone-process).
|
|
|
|
### As a Windows Service
|
|
You can also run WireMock.Net as a Windows Service, follow this [WireMock-as-a-Windows-Service](https://github.com/WireMock-Net/WireMock.Net/wiki/WireMock-as-a-Windows-Service).
|
|
|
|
### As a Web Job in Azure or application in IIS
|
|
See this link [WireMock-as-a-(Azure)-Web-App](https://github.com/WireMock-Net/WireMock.Net/wiki/WireMock-as-a-(Azure)-Web-App)
|
|
|
|
### In a docker container
|
|
There is also a Linux and Windows-Nano container available at [hub.docker.com](https://hub.docker.com/r/sheyenrath).
|
|
For more details see also [Docker](https://github.com/WireMock-Net/WireMock.Net-docker).
|
|
|
|
#### HTTPS / SSL
|
|
More details on using HTTPS (SSL) can be found here [Wiki : HTTPS](https://github.com/WireMock-Net/WireMock.Net/wiki/Using-HTTPS-(SSL))
|