SuperAPI AI 工具集

japa

编程与开发

查看项目

更新于 10-16 00:01

技能介绍

用途:在 AdonisJS 应用中使用 Japa 编写、调试和配置测试。Japa 由 AdonisJS 团队维护,原生运行于 Node.js,无需转译器,并有面向后端测试的插件。

主要能力:支持单元测试与基于 Playwright 的浏览器端到端测试;通过 adonisrc.ts 定义套件(如 unit、browser)及超时;在 tests/bootstrap.ts 中配置插件与钩子,包括 assert、pluginAdonisJS、browserClient、sessionBrowserClient、authBrowserClient,API 项目另加 apiClient、sessionApiClient、authApiClient。

使用方式:运行 node ace test 执行全部套件,node ace test unit 或 browser 指定套件,--files="posts/index" 指定文件,--tests="can list posts" 指定测试标题,--groups="Posts index" 指定分组,--watch、--bail、--failed 控制重跑与失败处理。数据库状态可在 group.each.setup 中使用 testUtils.db().withGlobalTransaction() 或 truncate(),迁移在 bootstrap.ts 的 runnerHooks.setup 中执行。测试认证需在 .env.test 设置 SESSION_DRIVER=memory。

适用场景:AdonisJS 项目的 API 测试、浏览器测试、控制台命令测试及测试替身(fakes、swaps、时间、sinon)。

限制与注意:每个测试组需选择一种数据库清理方式;避免在测试间不做清理、未设置 SESSION_DRIVER、使用 fake 后不恢复、在 setup 而非 teardown 中恢复 sinon 或清空 redis、模拟数据库查询、在已提交测试中使用 record()、以及提示标题大小写不匹配。具体版本、收费与平台信息暂未提供。