Node.js
WireMock Captain#
WireMock Captain provides an easy interface for testing HTTP-based APIs. Tests are implemented in TypeScript or JavaScript with the Node.js runtime. Mocking is performed by WireMock, which typically runs in a Docker container. Note that this library is maintained outside the WireMock organization on GitHub.
Example:
import { WireMock } from 'wiremock-captain';
describe('Integration with WireMock', () => {
// Connect to WireMock
const wiremockEndpoint = 'http://localhost:8080';
const mock = new WireMock(wiremockEndpoint);
test('mocks downstream service', async () => {
const request: IWireMockRequest = {
method: 'POST',
endpoint: '/test-endpoint',
body: {
hello: 'world',
},
};
const mockedResponse: IWireMockResponse = {
status: 200,
body: { goodbye: 'world' },
};
await mock.register(request, mockedResponse);
// rest of the test
});
});
WireMock REST Client#
The WireMock REST client is a lightweight module to interact with a running WireMock server based on its OpenAPI 3.0 spec via REST API. Note that this library is maintained outside the WireMock organization on GitHub.