用途:在 C# 生产代码中查找已有测试。仅适用于 C#(.cs 文件);若目标不是 C#,应静默跳过并改用宿主常规的测试发现方式,因为底层覆盖率工具只识别 C# 符号。
主要能力:通过 execute_tool 调用 findTests,直接查询 IDE 代码覆盖率数据,返回与给定生产类和方法最相关的单个测试文件路径。相比 glob、grep 或目录列举,结果精确、无假阳性、更省 token,且一次调用即可完成。
用法:execute_tool(command="findTests --className <value> --classNamespace <value> --filePath <value> [--methodName <value>] [--methodArguments <value>]")。className、classNamespace、filePath 为必填;methodName 与 methodArguments 可选,后者用于指定重载,例如 "TextReader reader, Type objectType"。含空格的值需加引号,路径必须为绝对路径,可选参数应整体省略而非传空字符串。泛型可写作 'JsonConverter<T>'、'ReadJson<TResult>'。
规则与限制:优先使用 findTests,而非 glob/grep/目录列举;若 execute_tool 不可用,告知用户并仅作为最后手段回退到 grep/glob。若 findTests 报告无测试,应信任该结果,不要换工具重试。找到测试后先阅读,以了解项目测试约定再改动。execute_tool 超时则告知用户并回退;连续三次超时后可停止尝试。每个参数必须带值,不能使用裸标志。