Mockserver supports HTTPS without additional configuration:
import { MockserverContainer, type StartedMockserverContainer } from "@testcontainers/mockserver"
import { mockServerClient } from "mockserver-client"
let ms!: StartedMockserverContainer
try {
ms = await new MockserverContainer("mockserver/mockserver:5.15.0").start()
const client = mockServerClient(ms.getHost(), ms.getMockserverPort())
await client.mockSimpleResponse("/hello", "Hello", 200)
const response = await fetch(`https://${ms.getHost()}:${ms.getFirstMappedPort()}/hello`)
const body = await response.text()
console.log(
response,
body
)
} finally {
await ms?.stop()
}Note that you must disable certificate verification because mockserver uses a self-signed certificate:
# You must start the test with cert verification disabled.
NODE_TLS_REJECT_UNAUTHORIZED=0 node app.ts