已合并
【PR】: 将ut/st注册到ctest统一管理 #1416
【PR】: 将ut/st注册到ctest统一管理 #1416
已合并
shengnan创建于 7月22日
shengnan成员
7月22日

Pull Request

描述

将ut/st注册到ctest统一管理

变更类型

请选择本次引入的变更类型:

关联的Issue

如何测试

描述测试此变更的步骤和前提条件:
1.
2.

核对清单

其他信息

在此添加任何其他关于本次 PR 的说明。

likedislike
Pull Request已成功合入, 合并人@CANN-robot
(感谢 shengnan 的贡献)
Sshengnan成员
7月22日 添加了label:enhancement
Sshengnan成员
7月22日 创建了 pull request,commit 3a4de50d
atomgit-bot
atomgit-bot
7月22日 评论:

变更摘要

此 PR 将项目中的单元测试 (UT) 和系统测试 (ST) 的执行方式从直接运行测试二进制文件,统一迁移至 ctest 框架管理。在 scripts/test/run_autofuse_test.sh 脚本中,多个测试函数不再直接调用各自的可执行文件,而是改为使用 ctest 命令配合正则筛选和测试目录参数来统一调度运行。同时移除了两个不再需要的辅助函数 run_codegen_one_e2e_st 和 run_backend_one_e2e_st。

主要改动

  • build_test 改用 ctest 执行: 原先切换到 tests/ut/ 目录直接运行 test_main 可执行文件;现改为通过 ctest --output-on-failure -j${THREAD_NUM} -R '^test_main_ut_aggregate$' --test-dir ${AUTOFUSE_BUILD_PATH}/tests --no-tests=error 执行,同时移除了 cd 切换目录的逻辑。

  • build_test_ascir_st、build_ut_optimize、build_ut_common、build_kernel_tool、build_ut_att 统一使用 ctest: 这五个测试函数原先均通过直接调用各自测试二进制(如 test_ascir_st、optimize_ut、test_common、test_kernel、att_ut)的方式运行;统一改为 ctest 命令,分别使用对应的正则模式(如 ^ascir_st_aggregate$、^optimize_ut_aggregate$ 等)进行测试筛选和执行。

  • 移除 run_codegen_one_e2e_st 与 run_backend_one_e2e_st 函数: 删除了这两个负责复制并运行 e2e 测试可执行文件的辅助函数,表明相关 e2e 测试也已纳入 ctest 统一管理或以其他方式替代。

likedislike
不准确?
atomgit-bot
atomgit-bot
7月22日 评论:

代码审查

All confirmed — the removed functions have zero references across the entire project. The removal is safe.


关闭总结

本次审查覆盖了全部 7 个变更文件:

文件 审查结论
autofuse/tests/st/ascir/CMakeLists.txt 新增 add_test(ascir_st_aggregate) 及标签,无独立问题
autofuse/tests/st/codegen/CMakeLists.txt 发现 1 个 P2 问题(kernel_tool 工作目录变更)
autofuse/tests/ut/CMakeLists.txt 发现 2 个 P3 问题(test_main 双重注册 + 缺少 LABELS)
autofuse/tests/ut/att/CMakeLists.txt 无问题
autofuse/tests/ut/common/CMakeLists.txt 无问题
autofuse/tests/ut/optimize/CMakeLists.txt 无问题
scripts/test/run_autofuse_test.sh 变更模式一致,移除的函数为死代码,无独立问题

问题统计:

  • P0: 0
  • P1: 0
  • P2: 1(kernel_tool_st_aggregate 工作目录从 kernel_tool/ 变为父目录,若测试依赖相对路径可能失败)
  • P3: 2(test_main 双重 CTest 注册、UT 聚合测试缺少 LABELS 标签)

整体风险评估:低。 核心重构(直接执行 → ctest 统一管理)模式一致且正确。P2 问题是 kernel_tool 工作目录变更,属于边界场景,触发概率取决于 test_kernel 是否使用相对文件路径;其余为 P3 设计改进建议,不影响功能正确性。

⚠️ 已识别出整体风险,但无法提取行内评论,请参考整体评估。

likedislike
不准确?
CANN-robotCANN-robot成员
7月22日 添加了label:cann-cla/yes
CANN-robot
CANN-robot成员
7月22日 评论:

Thanks for your pull-request.
The full list of commands accepted by me can be found at here。
You can get sig-info at here


PR Approval Progress

✅ Congratulations! All modules have met the lgtm and approve requirements.

Module Approval Details

module lgtm status approve status
repo-cann/graph-autofusion ✅ zhanj, xchu42, zhang_shengjie (3/2) ✅ zhanj (1/1)

💡 Tip:

  • Committer can comment /approve or /lgtm
  • Commenting /approve implies both code review (lgtm) and intent to merge (approve)

CLA Signature Pass

shengnan666, thanks for your pull request. All authors of the commits have signed the CLA. 👍

likedislike
CANN-robotCANN-robot成员
7月22日 将yangyongqiang0606,xchu42,zhang_shengjie,depeng1994,wqtshg_wt,peiyang,XuebinYang,sjtulxh,zhanj,zhujingjing,xuyafei,wangxiaotian995设为评审人
CANN-robotCANN-robot成员
7月22日 将yangyongqiang0606,xchu42,zhang_shengjie,depeng1994,wqtshg_wt,peiyang,XuebinYang,sjtulxh,zhanj,zhujingjing,xuyafei,wangxiaotian995设为审查人
shengnan成员
7月22日 评论:

compile

likedislike
Sshengnan成员
7月22日 预合并成功(commit_id: ed72d76b439304976dad84411ecfe31a2412ee2e)
CANN-robotCANN-robot成员
7月22日 添加了label:ci-pipeline-running
CANN-robot
CANN-robot成员
7月22日 评论:

流水线任务触发成功
任务链接 [a232cdb58652437987754dde40dce449][流水线指导]

任务名称状态日志下载链接
codecheck ✅ SUCCESS >>>>>
SCA ✅ SUCCESS >>>>>
antipoison ✅ SUCCESS >>>>>
codecheck_checkpr ✅ SUCCESS
pre_comment ✅ SUCCESS >>>>>
codecheck_codestyle ✅ SUCCESS >>>>>
codecheck_precommit ✅ SUCCESS >>>>>

[2026-07-22 10:11:48]    CI执行结束

likedislike
CANN-robot
CANN-robot成员
7月22日 评论:

流水线任务触发成功
任务链接 [fc046e6ba6b64bbd8458709b5af870eb][流水线指导]

任务名称状态日志下载链接
UT_Test_Python_superkernel ✅ SUCCESS >>>>>
ST_Test_Python_superkernel ✅ SUCCESS >>>>>
UT_Test_superkernel ✅ SUCCESS >>>>>
UT_Test_autofuse_framework ✅ SUCCESS >>>>>
ST_Test_autofuse_framework ✅ SUCCESS >>>>>
UT_Test_autofuse_ascendc_api ✅ SUCCESS >>>>>
ST_Test_autofuse_ascendc_api ✅ SUCCESS >>>>>
ST_Test_autofuse_e2e ✅ SUCCESS >>>>>
pre_comment ✅ SUCCESS >>>>>

[2026-07-22 10:23:39]    CI执行结束

likedislike
CANN-robot
CANN-robot成员
7月22日 评论:

流水线任务触发成功
任务链接 [e18694668c974fd68e78ef96c7a9932a][流水线指导]

任务名称状态日志下载链接
Compile_Ascend_X86 ✅ SUCCESS >>>>> >>>>>
Compile_Ascend_ARM ✅ SUCCESS >>>>> >>>>>
pre_comment ✅ SUCCESS >>>>>
PreSmoke_A900_npupool ✅ SUCCESS >>>>>

[2026-07-22 10:17:15]    CI执行结束

likedislike
CANN-robotCANN-robot成员
7月22日 删除了label:ci-pipeline-running
此处折叠了5条事件消息 查看更多
CANN-robotCANN-robot成员
7月22日 添加了label:ci-pipeline-passed
CANN-robot
CANN-robot成员
7月22日 评论:

Notification

This pull request has been changed(code update) or closed, so removes the following label(s): ci-pipeline-passed.

likedislike
Sshengnan成员
7月22日 预合并成功(commit_id: 858f8815397780fad6bb28b3b40f5f335419ee40)
Sshengnan成员
7月22日 预合并成功(commit_id: ab82351966b0e257deedf1400c8f1cf9f186bdfa)
Sshengnan成员
7月22日 强制推送  1 个提交:a07f5220-refactor: run autofuse tests through ctest
Sshengnan成员
7月22日 预合并成功(commit_id: de51253fa0691c6272aa1cfc2ce20bdd1874f68a)
CANN-robotCANN-robot成员
7月22日 删除了label:ci-pipeline-passed
CANN-robot
CANN-robot成员
7月22日 评论:

Notification

This pull request has been changed(code update) or closed, so removes the following label(s): ci-pipeline-passed.

likedislike
shengnan成员
7月22日 评论:

compile

likedislike
Sshengnan成员
7月22日 预合并成功(commit_id: 35b184e3ce47f7a2a40a99d7b3edbc770f19cd1d)
CANN-robotCANN-robot成员
7月22日 添加了label:ci-pipeline-running
CANN-robot
CANN-robot成员
7月22日 评论:

流水线任务触发成功
任务链接 [f8be86dc4cac4784a9cb54334a372191][流水线指导]

任务名称状态日志下载链接
codecheck ✅ SUCCESS >>>>>
SCA ✅ SUCCESS >>>>>
antipoison ✅ SUCCESS >>>>>
codecheck_checkpr ✅ SUCCESS
pre_comment ✅ SUCCESS >>>>>
codecheck_codestyle ✅ SUCCESS >>>>>
codecheck_precommit ✅ SUCCESS >>>>>

[2026-07-22 14:21:33]    CI执行结束

likedislike
CANN-robot
CANN-robot成员
7月22日 评论:

流水线任务触发成功
任务链接 [c10513aa0c6845b7ac953fca521b6fb2][流水线指导]

任务名称状态日志下载链接
UT_Test_Python_superkernel ✅ SUCCESS >>>>>
ST_Test_Python_superkernel ✅ SUCCESS >>>>>
UT_Test_superkernel ✅ SUCCESS >>>>>
UT_Test_autofuse_framework ✅ SUCCESS >>>>>
ST_Test_autofuse_framework ✅ SUCCESS >>>>>
UT_Test_autofuse_ascendc_api ✅ SUCCESS >>>>>
ST_Test_autofuse_ascendc_api ✅ SUCCESS >>>>>
ST_Test_autofuse_e2e ✅ SUCCESS >>>>>
pre_comment ✅ SUCCESS >>>>>

[2026-07-22 14:33:36]    CI执行结束

likedislike
CANN-robot
CANN-robot成员
7月22日 评论:

流水线任务触发成功
任务链接 [bbadb1431da543a09b41168ad56f27ce][流水线指导]

任务名称状态日志下载链接
Compile_Ascend_X86 ✅ SUCCESS >>>>> >>>>>
Compile_Ascend_ARM ✅ SUCCESS >>>>> >>>>>
pre_comment ✅ SUCCESS >>>>>
PreSmoke_A900_npupool ✅ SUCCESS >>>>>

[2026-07-22 14:27:30]    CI执行结束

likedislike
xchu42
xchu42成员
7月22日 评论:

/lgtm

likedislike
zhang_shengjie成员
7月22日 评论:

/lgtm

likedislike
CANN-robotCANN-robot成员
7月22日 添加了label:lgtm
CANN-robotCANN-robot成员
7月22日 删除了label:ci-pipeline-running
CANN-robotCANN-robot成员
7月22日 添加了label:ci-pipeline-passed
zhanj
zhanj成员
7月22日 评论:

/approve

likedislike
CANN-robotCANN-robot成员
7月22日 添加了label:approved
CANN-robotCANN-robot成员
7月22日 合入了pull request