test-runner 是什么
test-runner 是跨语言测试实践指南,为 TypeScript/JavaScript 推荐 Vitest 或 Jest,为 Python 使用 pytest,为 Swift 使用 XCTest,并以 Playwright 或 XCUITest 覆盖端到端场景。
适用场景
适用时应先确认具体任务、对象、范围和成功标准,再决定是否采用该 Skill;如果已有更直接的专用工具、官方接口或人工流程,应比较成本、权限和可验证性后选择。
核心能力与工作机制
它给出各框架启动命令、Arrange-Act-Assert、异步测试、mock、API 和 React 组件测试、覆盖率命令及 TDD 红绿重构循环。
执行流程
先识别语言、框架和现有测试约定,确定公开行为、边界条件、错误处理和业务状态转换;先写失败测试,再做最小实现,运行相关套件与覆盖率,最后重构并运行全量测试。
输入与输出
开始前需要提供任务目标、必要素材或标识、允许操作的范围、输出格式以及不能改变的约束。缺少会影响账号、费用、隐私或结果路线的输入时,应先补齐。输出既包括可交付结果,也应包括使用的输入范围、关键参数、状态和验证证据;排队、预览、推测或局部成功不能表述为完整交付。
依赖、账号与权限
需要项目依赖、对应语言工具链和可执行测试环境;集成与 E2E 测试还需数据库、服务或浏览器隔离。
副作用、限制与风险
覆盖率高不代表断言有效,过度 mock 会测试实现细节;不稳定外部依赖和共享状态会造成误报。实际执行可能读取本地或远端数据、写入文件、调用网络服务或改变外部系统。任何发送、发布、删除、覆盖、付费、部署或持久配置动作都要在执行前说明对象与影响。
不适用边界
不应测试第三方库内部实现、琐碎 getter 或为了覆盖率写无意义断言。
失败处理与验收
失败时先保留原始输入、任务标识、日志和当前状态,查询是否已经产生结果或副作用,再决定有限重试、回滚或改用替代路线,避免重复写入与重复计费。验收必须检查真实文件、页面、记录或任务终态,并抽查关键字段、数量、格式、权限和边界条件;无法实际验证的部分应明确标注,而不是依据命令返回或计划文本推断。
适合谁使用
适合开发者和测试工程师。
来源、版本与许可
本条目依据 SkillHub 热门榜、发布者详情和版本 1.0.0 的完整 SKILL.md 整理,核验日期为 2026 年 9 月 26 日。完整 SKILL.md 未声明许可证,公开可下载不代表可以任意复制、修改或再分发。 SkillHub 当前两套安全扫描状态为 benign、benign;该状态只是平台信号,不能替代对脚本、凭据、网络请求、数据外送与后续版本的人工审查。
常见问题
1. test-runner 主要解决什么问题?
test-runner 是跨语言测试实践指南,为 TypeScript/JavaScript 推荐 Vitest 或 Jest,为 Python 使用 pytest,为 Swift 使用 XCTest,并以 Playwright 或 XCUITest 覆盖端到端场景。适用时应先确认具体任务、对象、范围和成功标准,再决定是否采用该 Skill;如果已有更直接的专用工具、官方接口或人工流程,应比较成本、权限和可验证性后选择。是否采用它,应以实际任务边界和可核验材料为准,不要因为榜单热度而跳过来源审查。
2. 开始前需要准备什么?
开始前需要提供任务目标、必要素材或标识、允许操作的范围、输出格式以及不能改变的约束。缺少会影响账号、费用、隐私或结果路线的输入时,应先补齐。准备阶段不要代替用户猜测关键事实;缺少会改变路线、费用或权限的输入时,应先补齐再执行。
3. 它怎样完成任务并交付结果?
先识别语言、框架和现有测试约定,确定公开行为、边界条件、错误处理和业务状态转换;先写失败测试,再做最小实现,运行相关套件与覆盖率,最后重构并运行全量测试。每个阶段都要保留输入、决策、输出和检查点,不能把计划、预览或排队状态描述成最终交付。
4. 需要哪些工具、账号或权限?
需要项目依赖、对应语言工具链和可执行测试环境;集成与 E2E 测试还需数据库、服务或浏览器隔离。凭据应放在安全环境中,并按最小权限授权;账号、网络或本地依赖不满足时应明确停止条件。
5. 它会产生哪些外部操作或副作用?
实际执行可能读取本地或远端数据、写入文件、调用网络服务或改变外部系统。任何发送、发布、删除、覆盖、付费、部署或持久配置动作都要在执行前说明对象与影响。涉及外部写入、上传、发送、付费或持久配置时,应在实际动作前说明影响范围并取得相应确认。
6. 哪些情况不适合使用?
不应测试第三方库内部实现、琐碎 getter 或为了覆盖率写无意义断言。超出来源明确能力、专业资质或授权范围时,应切换到更合适的工具或交给专业人员处理。
7. 失败或结果异常时怎样恢复?
失败时先保留原始输入、任务标识、日志和当前状态,查询是否已经产生结果或副作用,再决定有限重试、回滚或改用替代路线,避免重复写入与重复计费。恢复时优先查询已有任务、日志或备份,避免无上限重试、重复扣费、重复发送或覆盖唯一原件。
8. 如何验收结果并控制风险?
验收必须检查真实文件、页面、记录或任务终态,并抽查关键字段、数量、格式、权限和边界条件;无法实际验证的部分应明确标注,而不是依据命令返回或计划文本推断。验收应基于真实文件、页面、任务终态或权威来源,并把未能实际检查的部分明确标记出来。