Repolode
antiwork

antiwork/shortest

基于 Playwright 与 Anthropic Claude 的 AI 端到端测试框架,用自然语言编写测试用例。

Star
5,699
Fork
340
未关闭 Issue
2
最近提交
3个月前

这是什么?

Shortest 是一个端到端测试框架,允许用自然语言描述浏览器测试,而不必编写选择器和逐步脚本。每个测试是传给 shortest() 的一段文字描述,由 Anthropic Claude API 驱动的 AI 模型在基于 Playwright 的浏览器中执行各个步骤。

框架通过 init 命令安装,会将依赖添加为开发依赖、生成 shortest.config.ts 配置文件,并在 .env.local 中预留 Anthropic API Key 的占位项。测试文件按可配置的匹配模式查找,可通过命令行按文件或行号运行,也可在 CI 中以无头模式执行。回调函数会在浏览器操作结束后运行,便于添加数据库校验等断言。此外还支持生命周期钩子、串联测试流程和 API 端点测试。

项目内置了 GitHub 双因素认证登录的辅助功能,以及通过 Mailosaur 验证邮件的能力。项目使用 TypeScript 编写,面向 Next.js 应用,示例位于 examples 目录。

核心功能

  • 01用自然语言描述测试,无需编写基于选择器的脚本。
  • 02借助 Anthropic Claude API 在浏览器中执行测试步骤。
  • 03基于 Playwright 构建,可配置浏览器上下文选项。
  • 04支持包含双因素认证的 GitHub 登录测试。
  • 05通过 Mailosaur 验证登录邮件。
  • 06提供生命周期钩子、串联测试和 API 端点测试。

适用场景

  • 为 Next.js 应用补充端到端测试,减少脆弱选择器的维护成本。
  • 测试登录流程,包括带双因素认证的 GitHub 登录。
  • 在 CI/CD 流水线中以无头模式运行浏览器测试。
  • 在回调函数中结合界面检查与数据库断言。

快速上手

  1. 1

    使用 init 命令在项目中初始化 Shortest

    npx @antiwork/shortest init
  2. 2

    在 .env.local 中添加你的 Anthropic API 密钥(ANTHROPIC_API_KEY)

  3. 3

    编写一个自然语言测试文件,例如 app/login.test.ts

  4. 4

    运行所有测试

    pnpm shortest

使用前须知

  • 每次运行测试都会调用 Anthropic Claude API,因此需要 API 密钥并产生使用费用。
  • 测试执行依赖 AI,因此不同运行之间的结果可能有所差异。
  • GitHub 2FA 和邮件验证等功能需要额外的第三方服务。

收录于专题

标签

常见问题

shortest 是什么?
基于 Playwright 与 Anthropic Claude 的 AI 端到端测试框架,用自然语言编写测试用例。 Shortest 是一个端到端测试框架,允许用自然语言描述浏览器测试,而不必编写选择器和逐步脚本。每个测试是传给 shortest() 的一段文字描述,由 Anthropic Claude API 驱动的 AI 模型在基于 Playwright 的浏览器中执行各个步骤。
shortest 可以免费使用吗?用的什么许可证?
shortest 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
shortest 还在维护吗?
半年内有更新。shortest 最近一次提交是在 2026年8月6日。
shortest 适合用来做什么?
为 Next.js 应用补充端到端测试,减少脆弱选择器的维护成本。 测试登录流程,包括带双因素认证的 GitHub 登录。 在 CI/CD 流水线中以无头模式运行浏览器测试。 在回调函数中结合界面检查与数据库断言。
shortest 怎么安装和运行?
使用 init 命令在项目中初始化 Shortest: npx @antiwork/shortest init 在 .env.local 中添加你的 Anthropic API 密钥(ANTHROPIC_API_KEY) 编写一个自然语言测试文件,例如 app/login.test.ts 运行所有测试: pnpm shortest
在哪里获取 shortest?
源代码和安装说明在 GitHub 上:https://github.com/antiwork/shortest

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目