Keploy 快速上手教程5 分钟从真实流量生成 API 测试与数据存根【免费下载链接】keployOpen-source platform for creating safe, isolated production sandboxes for API, integration, and E2E testing.项目地址: https://gitcode.com/GitHub_Trending/ke/keploy做集成测试时最耗时间的往往不是写断言而是搭环境数据库、消息队列、上游依赖得逐个 mock。Keploy 是一款测试自动化工具它先记录运行中应用的真实流量再自动产出测试用例和数据存根mock即用预录数据冒充外部依赖的桩回放时测试不再依赖任何外部环境。 一句话定位Keploy 是开源的测试生成与存根管理工具你的应用照常启动运行Keploy 在旁拦截网络流量结束后落盘测试用例和 mock 数据文件之后随时离线重放。⚙️ 记录与回放是这样工作的核心机制Keploy 在 Linux 上用 eBPF一种在内核里安全运行小程序的机制常用于观测网络事件在网络层拦截流量全程无代码侵入、不需要 SDK它记录 API 请求、数据库查询、流式事件回放时按录制内容确定性重放。围绕这个机制有三个关键能力测试生成真实 API 调用被自动转换成测试用例并执行断言入口在 cli/record.go 与 cli/test.go。数据存根MySQL、Postgres、Kafka 等依赖都被录制并可重放存根的匹配与消费逻辑在 pkg/agent/proxy/syncMock/存根的会话/连接/单次测试三种生命周期详见 docs/explanation/mock-lifetimes.md。对比报告回放结束后生成通过/失败及差异报告逻辑在 pkg/service/report/report.go。 3 步跑通第一次运行准备环境Linuxx86_64 或 arm64 root 权限源码构建另需 Go 1.16。验证标志终端执行go version能输出版本号。安装克隆仓库后执行安装脚本。验证标志keploy version能输出版本号。git clone https://gitcode.com/GitHub_Trending/ke/keploy cd keploy ./keploy.sh install首次运行在你的应用目录记录并重放。验证标志工作区生成keploy.yml、测试用例文件和mocks.yaml存根数据随后keploy test输出每个用例的通过/失败结果。keploy record -c CMD_TO_RUN_APP keploy test -c CMD_TO_RUN_APP --delay 10 团队落地的 3 个用法接入 CI/CD在流水线里加一步keploy test用录好的存根离线跑测试CI 机器无需起真实数据库。协作与评审生成的用例和存根是标准 YAML/Go 文件可直接入库走 PR 评审依赖数据变化时 diff 存根即可定位。调优录制格式KEPLOY_MOCK_FORMATgob可切换为二进制存根高吞吐下更省 CPU全部可调项见 docs/env-vars.md。⚠️ 适用场景与已知局限Keploy 适合后端 API、集成与 E2E 测试这类依赖难搭的场景。局限要提前知道Linux 上原生拦截依赖 eBPF需要 rootmacOS 没有原生拦截路径必须把应用和 Keploy 一起放进 Docker 运行部分协议未开源的依赖在开源版中不受支持。总的来说Keploy 把搭测试环境变成先跑一遍、再随时重放。建议先找一个个人项目试一次记录—回放流程亲身感受集成测试的维护成本变化再决定是否引入团队。【免费下载链接】keployOpen-source platform for creating safe, isolated production sandboxes for API, integration, and E2E testing.项目地址: https://gitcode.com/GitHub_Trending/ke/keploy创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
