Hoverfly

Hoverfly

轻量API模拟与服务虚拟化

开发官网

应用介绍

集成测试依赖的第三方接口要么限流、要么没有沙箱、要么半夜挂了,一条流水线红一片却和自己的代码无关。Hoverfly 是一个用 Go 写的单文件程序,当作代理或者 Web 服务器架在应用和外部 API 之间:先用 capture 模式把真实请求和响应录下来,之后切到 simulate 模式,同样的请求就由它回放,外部服务挂不挂都不影响测试。

录下来的模拟是一份 JSON,可以改、可以进版本库、可以在同事机器上一键导入。它还能注入延迟和随机失败来演练超时逻辑,用中间件脚本改写响应,synthesize 模式则完全由脚本生成回应。配套的 hoverctl 命令行负责启停、切模式、导入导出,Windows、macOS、Linux 都有二进制包。

软件功能



四种模式:capture 录制、simulate 回放、synthesize 脚本生成、modify 实时改写。

代理或服务器:既能作为 HTTP(S) 代理透明拦截,也能直接当目标服务被调用。

JSON 模拟文件:请求匹配规则和响应存成 JSON,可编辑、可共享、可入库。

延迟与故障注入:给指定接口加固定或随机延迟,模拟慢网和失败。

中间件:用任意语言的脚本在请求前后改写内容。

hoverctl:命令行管理多个 Hoverfly 实例:启动、停止、切模式、导入导出。

跨平台单文件:Windows、macOS、Linux 二进制,也有 Docker 镜像和 Java 绑定。

应用截图

标签:API测试