-
-
Notifications
You must be signed in to change notification settings - Fork 212
Using WireMock.Net.Testcontainers
WireMock.Net.Testcontainers uses Testcontainers for .NET to spinup a docker container directly from the C# (unittest) code.
This options requires docker service running locally.
Both the Linux and the Windows version from WireMock.Net are supported 📝.
📝 It's not needed to specify the version, this is determined automatically. (So if you are running Docker on a Windows Host, the Windows Docker image is used, else the Linux Docker image is used.
To build a container and startup this container, use this code:
var container = new WireMockContainerBuilder()
.WithAutoRemove(true)
.WithCleanUp(true)
.Build();
await container.StartAsync().ConfigureAwait(false);
The following builder methods are available for the WireMockContainerBuilder
:
Method | Example | What |
---|---|---|
WithMappings |
.WithMappings(@"C:\example\\mappings") |
Specifies the path for the (static) mapping json files. |
WithWatchStaticMappings |
.WithWatchStaticMappings(true) |
Watch the static mapping files + folder for changes when running. |
WithAdminUserNameAndPassword |
.WithAdminUserNameAndPassword("x", "y") |
Set the admin username. and password for the container (basic authentication). |
WithImage |
.WithImage("sheyenrath/wiremock.net-alpine:1.6.4") |
You can provide a specific image + tag. |
Use the following code to get a RestEase Admin Client for this running container instance.
var restEaseApiClient = container.CreateWireMockAdminClient();
Use the following code to get a HTTP Client for this running container instance to call WireMock.Net
var client = container.CreateClient();
var result = await client.GetStringAsync("/test123");
Follow the tutorial here and make sure to use WireMock.Net container instead of the container used in that example.
- Home
- What is WireMock.Net
- WireMock.Org
- References
- Settings
- Admin REST API
- Proxying
- Stubbing
- Webhook
- Request Matching
- Response Templating
- Unit Testing
- Using WireMock
- Advanced
- Errors