SuperAPI AI 工具集

test-design

设计与创作

查看项目

更新于 10-15 23:48

技能介绍

用途:test-design 是一个通用测试设计原则技能,适用于任意语言与框架,用于编写有效测试、审查测试质量、设计测试结构。框架相关语法需查阅当前技术栈配置,本技能提供的是设计思路。

主要能力:

  1. 测试隔离:每个测试独立,任意顺序或单独运行结果一致;测试间不共享可变状态,各自准备数据,用 fixture(如 pytest fixtures、setUp/tearDown、@Before/@After)做单测初始化,避免类级或模块级状态,不依赖执行顺序。
  2. 边界测试:对每个参数测零/空、单元素、边界值、越界值、典型值;常见边界包括整数溢出、字符串长度、集合大小、日期(午夜、月末、闰年、时区切换)、Unicode。
  3. 错误路径覆盖:每个可失败代码路径都应有测试,验证异常类型、错误信息、副作用回滚与错误传播;不建议用过宽的 Exception 断言。
  4. AAA 结构:Arrange(准备)、Act(执行)、Assert(断言)三阶段;一个测试一个 Act,多个断言验证同一行为的不同方面可以接受。
  5. 测试命名:采用 test_<单元><场景><预期结果>,使名称本身成为文档,失败时无需读正文即可定位。
  6. Mock 边界:网络、文件系统、时钟(freezegun、frozen_time 等)、第三方 API、随机数等外部边界应 mock;自己的类与函数、内部数据结构、纯函数、配置加载等内部边界不要 mock;避免过度 mock 导致测试只验证 mock 本身。
  7. 有效断言:断言具体期望值,而非仅真值;断言层次由强到弱依次为精确相等、包含、类型检查、真值;避免魔法数字,使用具名常量。
  8. 非单元测试设计:集成测试放宽隔离,使用真实依赖并断言跨边界的可观察结果;契约测试测形状而非内容,用 schema 校验;安全测试每个测试代表一个攻击向量,断言优雅失败(如 401/403 而非 500)且不泄露敏感数据;E2E 测试覆盖关键用户流程,尽量减少 mock;UI 测试针对用户可见行为,使用无障碍标识符定位元素。

使用方式与限制:资料未提供具体安装命令与调用方式;该技能以设计原则形式使用,需结合当前技术栈配置获取框架语法。资料未说明其收费、价格、平台支持或效果,均暂未提供。