keploy/keploy

GitHub: keploy/keploy

基于 eBPF 的 API 自动化测试工具,通过录制真实流量自动生成测试用例和 Mock 数据,实现语言无关的无侵入式集成测试。

Stars: 16157 | Forks: 2141

Keploy Logo

keploy%2Fkeploy | Trendshift

⚡️ API 测试比单元测试更快,源于用户流量 ⚡️

🌟 AI 时代开发者必备工具,实现 90% 测试覆盖率 🌟

Slack LinkedIn YouTube X

Keploy CNCF Landscape GitHub Stars Help us reach 20k stars!

[Keploy](https://keploy.io) 是一款 **以开发者为中心的 API 和集成测试工具**,能够以快于单元测试的速度自动生成 **测试和数据 Mock**。 它记录 API 调用、数据库查询和流事件,然后将其重放为测试。在底层,Keploy **使用 eBPF 在网络层捕获流量**,但对您而言,它完全是 **无代码** 且 **语言无关** 的。 Convert API calls to API tests test cases and Data Mocks using AI # 主要亮点 ## 🎯 无需修改代码 只需使用 `keploy record` 运行您的应用。真实的 API 和集成流程会自动被捕获为测试和 Mock。*(Keploy 在底层使用 eBPF 捕获流量,因此您**不需要**添加任何 SDK 或修改代码。)* ## 📹 录制并重放复杂流程 Keploy 可以将复杂的、分布式的 API 流程录制并重放为 Mock 和存根。这就像为您的测试配备了一个轻量级的时间机器——为您节省大量时间! 👉 [阅读关于录制-重放的文档](https://keploy.io/docs/keploy-explained/introduction/) Convert API calls to test cases ## 🐇 完整的基础设施虚拟化(超越 HTTP Mock) 与仅 Mock HTTP 端点的工具不同,Keploy 记录 **数据库**(Postgres, MySQL, MongoDB)、**流/队列**(Kafka, RabbitMQ)、外部 API 等。 它会确定性地重放这些内容,因此您无需重新配置基础设施即可运行测试。 👉 [阅读关于基础设施虚拟化的文档](https://keploy.io/docs/keploy-explained/how-keploy-works/) Convert API calls to test cases ## 🧪 综合测试覆盖率 如果您是 **开发者**,您可能关心 *语句* 和 *分支* 覆盖率 —— Keploy 可以为您计算这些。 如果您是 **QA**,您更关注 *API Schema* 和 *业务用例覆盖* —— Keploy 也能计算这些。这样覆盖率就不再是主观的了。 👉 [阅读关于覆盖率的文档](https://keploy.io/docs/server/sdk-installation/go/) ai test gen for api statement schema and branch coverage ## 🤖 利用 AI 扩展 API 覆盖率 Keploy 利用现有录制内容、Swagger/OpenAPI Schema 来发现:边界值、缺失/多余字段、错误类型、乱序序列、重试/超时。 这有助于扩展 API Schema、语句和分支覆盖率。 👉 [阅读关于覆盖率的文档](https://app.keploy.io/) ai test gen for api statement schema and branch coverage ### 其他功能 - 🌐 **CI/CD 集成:** 在您喜欢的任何地方使用 Mock 运行测试——本地 CLI、CI 流水线(Jenkins, Github Actions..),甚至跨 Kubernetes 集群。[了解更多](https://keploy.io/docs/running-keploy/api-testing-cicd/) - 🎭 **多用途 Mock**:您还可以将 Keploy 生成的 Mock 用作服务端测试! - 📊 **报告:** 统一的 API、集成、单元和 E2E 覆盖率报告,并在您的 CI 或 PR 中直接提供洞察。 - 🖥️ **控制台:** 一个对开发者友好的控制台,用于查看、管理和调试录制的测试和 Mock。 - ⏱️ **时间冻结:** 通过在执行期间冻结系统时间,确定性地重放测试。[了解更多](https://keploy.io/docs/keploy-cloud/time-freezing/) - 📚 **Mock 注册中心:** 集中注册中心,用于跨团队和环境管理、重用和版本化 Mock。[了解更多](https://keploy.io/docs/keploy-cloud/mock-registry/) ## 快速开始 ### 1. 安装 Keploy Agent ``` curl --silent -O -L https://keploy.io/install.sh && source install.sh ``` ### 2. 录制测试用例 在 Keploy 下启动您的应用,将真实的 API 调用转换为测试和 Mock。 ``` keploy record -c "CMD_TO_RUN_APP" ``` Python 示例: ``` keploy record -c "python main.py" ``` ### 3. 运行测试 在没有外部依赖的情况下离线运行测试。 ``` keploy test -c "CMD_TO_RUN_APP" --delay 10 ``` ## 资源 ### - 📘 [安装](https://keploy.io/docs/server/installation/) ### - 🏁 [快速入门](https://keploy.io/docs/quickstart/quickstart-filter/) ## 语言与框架(任意技术栈) 由于 Keploy 在 **网络层 (eBPF)** 进行拦截,因此它适用于 **任何语言、框架或运行时**——无需 SDK。

## 有疑问? ## 文档与社区 - 📘 [文档](https://keploy.io/docs/) — 探索完整文档 - 💬 [Slack 社区](https://join.slack.com/t/keploy/shared_invite/zt-357qqm9b5-PbZRVu3Yt2rJIa6ofrwWNg) — 加入讨论 - 📜 [贡献指南](https://keploy.io/docs/keploy-explained/contribution-guide/) - ❤️ [行为准则](https://github.com/keploy/keploy/blob/main/CODE_OF_CONDUCT.md) - 📢 [博客](https://keploy.io/blog/) — 阅读文章和更新 ## 贡献与协作 无论您是新手还是经验丰富者,您的意见都很重要。通过贡献代码、报告问题或分享反馈,帮助我们改进 Keploy。 让我们携手为现代应用构建更好的测试工具。
标签:AI辅助测试, Anchore, API测试, CNCF, DNS解析, Docker镜像, E2E Testing, EVTX分析, EVTX分析, EVTX分析, Keploy, LNA, Mock, pocsuite3, Python工具, Stub, web渗透, 回放测试, 威胁情报, 开发者工具, 开源项目, 接口集成, 搜索引擎查询, 日志审计, 流量录制, 测试生成, 测试用例, 测试覆盖率, 端到端测试, 软件测试