用途:该技能用于编写对抗性测试,刻意压测失败路径,适用于加固错误处理、压力测试假设、验证边界行为等场景。核心理念是“像攻击者一样思考”,目标是找出代码中的隐含假设并系统性地违反它们,而非追求覆盖率。
主要能力:提供一套假设搜寻方法,针对被测函数或模块提出六类问题——对输入、顺序、时序、状态、资源以及“不会发生之事”的假设,并逐一构造违反测试。同时给出数据、状态、环境、协议四类攻击向量提示,例如边界值、空集合、并发修改、文件缺失、网络超时、乱序消息等。
使用方式:先阅读代码理解实际行为,逐条列出隐含假设,再为每条假设编写一个违反测试,并按所违反的内容命名(如 test_rejects_negative_quantity)。测试仅通过公共 API 进行;若需私有访问才能破坏,则视为抽象泄漏并记录为发现项。每个场景须具备生产合理性。编写后运行 ASan、MSan、TSan、-race、Miri 等消毒器与竞态检测器。
验证门槛:假设已记录、每条假设至少有一个违反测试、失败路径产生有意义的错误、消毒器零警告通过。退出码含义:0 表示全部假设已识别、违反并处理;1 表示仍有未测试假设;2 表示发现静默失败;3 表示发现崩溃或未定义行为。
限制:资料未提供具体安装命令、依赖平台或收费信息,暂未提供。