用途
该技能用于在 dd-trace-js 仓库中新增或修改 Test Optimization 测试、测试框架集成测试时,对改动进行 v5 兼容性验证,避免在未验证的情况下宣告工作完成。
主要能力
- 要求每个被改动的测试同时通过当前配置与 v5 框架配置验证。
- 指导在写测试前确认测试套件在 v5 下运行的框架版本,并复用已有的基于版本的跳过条件。
- 提供 v5 验证流程:临时将根 package.json 版本设为 "5.0.0",用 v5 框架运行受影响的单元或集成测试(示例:MOCHA_VERSION=oldest、JEST_VERSION=oldest),必要时采用 .github/workflows/test-optimization.yml 中匹配的 Node 与框架组合。
- 要求确认受影响测试实际运行或存在合理的特性跳过;不兼容运行时或空运行视为 v5 未验证。
- 对不可用的框架特性,要求记录缺失能力与最低版本,并使用条件跳过;优先使用框架版本门控,必要时结合 version.js 中的 DD_MAJOR。
- 约束跳过范围:不得整体跳过 v5、弱化断言或将未解释的失败转为跳过,并需验证测试在受支持框架版本上仍能执行并通过。
- 要求确保不支持的导入、夹具或设置不会在跳过生效前导致失败。
- 要求验证后恢复原始 package.json 版本(即使验证失败),保留其他工作改动,且不得提交临时版本。
使用方式
在改动 Test Optimization 或测试框架集成测试后,按技能要求临时修改根 package.json 版本为 "5.0.0",通过正常测试命令在 v5 框架配置下运行受影响测试;对无法支持的情况使用条件跳过并记录原因;验证完成后恢复版本并汇总报告。若验证无法运行,需报告阻塞原因并将 v5 兼容性标记为未验证。
适用场景
适用于 dd-trace-js 中涉及 Test Optimization 或测试框架集成测试的新增与修改,尤其是需要保持 v5 兼容性的开发与审查流程。
限制
资料未提供具体安装命令、支持的框架与 Node 版本矩阵细节、测试运行命令全文;相关事实需以仓库内工作流与配置文件为准,暂未提供。