用途:该技能面向单元测试的日常执行与管理,支持在多种语言和测试框架下运行测试,包括 Jest、Vitest、pytest、Go test 和 Rust test,并涵盖覆盖率统计与监听模式。
主要能力:
- 运行 Jest 测试:可运行全部测试、指定测试文件、按路径模式或测试名称过滤,并支持 verbose 详细输出。
- 运行 Vitest 测试:可运行全部测试、指定文件、按过滤器运行、使用 verbose reporter,以及通过 UI 模式运行。
- 运行 pytest:可运行全部测试、指定文件或具体测试函数、按关键字过滤,并支持 verbose 输出与简短回溯。
- 运行 Go 测试:可运行全部包、指定包、指定测试函数,并支持 verbose 输出。
- 运行 Rust 测试:可运行全部测试、指定测试、指定模块,并可显示测试的 stdout。
- 生成测试文件:资料以 Vitest 和 Jest 为例,说明创建包含 describe/it/expect 块并导入被测模块的测试文件脚手架。
- 覆盖率:Jest 使用 --coverage;Vitest 使用 --coverage;pytest 使用 --cov=src --cov-report=html;Go 使用 -coverprofile 与 go tool cover 生成 HTML;Rust 需 cargo-llvm-cov 并生成 HTML。
- 监听模式:Jest 使用 --watch;Vitest 默认即为监听模式;pytest 需 pytest-watch(ptw);Go 需 watchexec 或类似工具。
使用方式:资料以命令行示例形式给出各框架的调用方式,例如 npx jest、npx vitest run、python -m pytest、go test ./...、cargo test 等,并展示如何附加过滤、详细输出、覆盖率与监听参数。
适用场景:适用于 JavaScript/TypeScript、Python、Go、Rust 项目的单元测试执行、按需筛选测试、生成覆盖率报告以及在开发过程中持续监听测试变化。
限制:资料未说明该技能的安装方式、依赖前提、支持的具体版本、平台兼容性、收费情况或效果保证;Rust 覆盖率明确需要 cargo-llvm-cov,pytest 监听模式需要 pytest-watch,Go 监听模式需要 watchexec 或类似工具。生成测试文件部分仅为示例说明,未提供完整模板或自动化生成命令。