qoder全栈项目单元测试需确保环境就绪、脚本路径合规且cli≥2.4.0;执行qoder init --test初始化,支持.spec.ts/.test.ts/__/tests__/路径的ts文件;可用相对路径或glob运行测试,支持--debug调试和--coverage生成报告。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

在Qoder全栈项目中执行单元测试,需先确认测试环境已就绪、测试脚本已按约定路径存放,并确保Qoder CLI工具版本不低于2.4.0——低于该版本将无法识别qoder test命令。
初始化测试环境
进入项目根目录后,运行qoder init --test。该命令会自动创建__tests__目录、生成jest.config.js(若未存在)并安装@qoder/test-utils依赖包。
如果项目已含Jest配置但未适配Qoder运行时,则此命令会备份原配置为jest.config.js.bak,并注入Qoder专用的setupFilesAfterEnv和testEnvironment字段。
编写可被识别的测试文件
Qoder仅识别以下任一命名模式的文件:*.spec.ts、*.test.ts、__tests__/**/*.ts。
不支持.js后缀的测试文件,即使配置了transform也不会被加载——【Qoder测试运行器强制要求TypeScript源码】。
示例合法路径:src/utils/format.spec.ts、__tests__/api/user.test.ts。
代码编辑 CLI 工具集合:Cursor CLI(agent)和 Qoder CLI(qodercli),用于代码修改、重构、Code Review 及自动化代码任务。
运行单个测试文件
方法一:使用相对路径指定文件
执行qoder test src/services/auth.spec.ts,直接运行该文件内所有describe和it块。
方法二:使用glob匹配
执行qoder test "__tests__/components/**/*",注意双引号包裹glob表达式,否则shell可能提前展开导致路径错误。
调试与覆盖率报告
第一步:启用调试模式
添加--debug参数,例如qoder test --debug src/models/user.spec.ts,此时会输出V8 inspector地址,可在Chrome DevTools中附加调试。
第二步:生成覆盖率报告
执行qoder test --coverage,覆盖率结果默认输出至coverage/lcov-report/index.html;若需同时输出文本摘要,追加--coverageReporters=text-summary。
第三步:排除非业务代码
在jest.config.js中配置collectCoverageFrom字段,明确限定只统计src/**/*.{ts,tsx},避免__mocks__或types目录干扰覆盖率数值。










