SuperAPI AI 工具集

wiremock-standalone-docker

测试与质量

查看项目

更新于 10-16 08:48

技能介绍

用途:在集成测试和端到端测试中以独立 Docker 容器运行 WireMock,模拟外部 API 行为,用于测试 HTTP 客户端、重试逻辑与错误处理,并可创建可移植、可复现的测试环境。

主要能力:通过 docker-compose 启动 wiremock/wiremock:3.5.2 镜像,映射 8080 端口并挂载 ./wiremock:/home/wiremock,使用 --global-response-templating 支持动态响应。在 wiremock/mappings/ 放置 JSON stub,在 wiremock/__files/ 放置响应体文件,可定义 200、400、401、403、404、429、500 及超时等场景;超时用 fixedDelayMilliseconds,限流可返回 429 并带 Retry-After 头。

使用方式:创建目录 wiremock/mappings 与 wiremock/__files;启动 docker compose up -d;用 curl http://localhost:8080/__admin/mappings 验证;将应用指向 http://localhost:8080 或 Docker 网络内的 http://wiremock:8080;测试运行间可用 curl -X POST http://localhost:8080/__admin/reset 重置。建议按功能组织映射子目录、纳入版本控制、使用描述性文件名。

适用场景:需要模拟外部 API、模拟错误条件、验证 API 契约、测试 HTTP 客户端配置与重试逻辑的团队。

限制:需确保 8080 端口可用或改映射;多容器时需配置 Docker 网络;容器重启会重置映射;stub 未匹配时可查 curl http://localhost:8080/__admin/requests,连接被拒可用 docker compose ps 与 lsof -i :8080 排查。若需与真实服务交互或生产级 mock 管理,资料暂未提供相关说明。