已关闭
[slog] 将 src/dfx/log 文件覆盖率提升至 100% #719
fujun19创建于  7月10日关闭于  7月18日
fujun19成员
7月10日 创建

背景

当前 src/dfx/log (slog模块) 的文件覆盖率为 77.4%,需要提升至 100%。

通过 bash tests/build_ut.sh --ut=slog -c -j40 构建并运行 slog UT 后,分析 .gcno 和 .gcda 文件得出以下覆盖率数据:

分类 数量 说明
源文件总数 137
有测试覆盖 (>0%) 106 已被UT执行
覆盖率0% (已编译未执行) 1 被编译进UT目标但无测试执行
未编译 (未被UT目标包含) 30 未被任何UT目标编译

目标

将 slog 模块 (src/dfx/log) 的文件覆盖率从 77.4% 提升到 100%。

需要覆盖的文件清单

一、覆盖率0%的文件(已编译但未被测试执行,共1个)

  • src/dfx/log/utils/log_compress/log_software_zip.c

二、未编译的文件(未被任何UT目标包含,共30个)

liblog (6个):

  • src/dfx/log/liblog/mergeslog/mergeslog.c
  • src/dfx/log/liblog/slog/dlog_async_process.c
  • src/dfx/log/liblog/slog/dlog_core_iam.c
  • src/dfx/log/liblog/slog/dlog_iam.c
  • src/dfx/log/liblog/slog/dlog_level_iam.c
  • src/dfx/log/liblog/slog/dlog_unified_timer_api.c

syslog/log_daemon (6个):

  • src/dfx/log/syslog/log_daemon/config_cmd/hdclog_device_init.c
  • src/dfx/log/syslog/log_daemon/file_dump/log_dsmi_drv.cpp
  • src/dfx/log/syslog/log_daemon/file_dump/log_file_dump_c.cpp
  • src/dfx/log/syslog/log_daemon/file_dump/log_file_utils.cpp
  • src/dfx/log/syslog/log_daemon/file_dump/log_get_file.cpp
  • src/dfx/log/syslog/log_daemon/file_dump/log_process_util.cpp

syslog/log_proxy (1个):

  • src/dfx/log/syslog/log_proxy/log_proxy.c

syslog/msnpureport (10个):

  • src/dfx/log/syslog/msnpureport/config/msn_operate_log_level.c
  • src/dfx/log/syslog/msnpureport/config/msnpureport_config.c
  • src/dfx/log/syslog/msnpureport/config/msnpureport_level.c
  • src/dfx/log/syslog/msnpureport/msnpureport.c
  • src/dfx/log/syslog/msnpureport/options/msnpureport_options.c
  • src/dfx/log/syslog/msnpureport/options/msnpureport_options_old.c
  • src/dfx/log/syslog/msnpureport/report/msnpureport_file_mgr.c
  • src/dfx/log/syslog/msnpureport/report/msnpureport_report.c
  • src/dfx/log/syslog/msnpureport/utils/msnpureport_print.c
  • src/dfx/log/syslog/msnpureport/utils/msnpureport_utils.c

syslog/sklog (1个):

  • src/dfx/log/syslog/sklog/klogd.c

syslog/slog (4个):

  • src/dfx/log/syslog/slog/log_server/log_post_process/app_report/log_hdc.cpp
  • src/dfx/log/syslog/slog/log_server/log_post_process/session_mgr/log_hdc_server.cpp
  • src/dfx/log/syslog/slog/log_server/log_pre_process/cmd_process/slogd_collect_log.c
  • src/dfx/log/syslog/slog/log_server/log_pre_process/log_communication/slogd_communication_iam.c

utils (2个):

  • src/dfx/log/utils/high_mem.c
  • src/dfx/log/utils/log_compress/log_hardware_zip.c

实现方案

  1. 覆盖率0%的文件:为 log_software_zip.c 添加对应的单元测试用例
  2. 未编译的文件:
    • 评估每个文件是否需要UT覆盖(部分文件可能是平台特定或IAM特定,不需要在当前UT目标中编译)
    • 将需要覆盖的文件添加到现有UT目标的CMakeLists.txt中
    • 为新增文件编写对应的单元测试

验收标准

likedislike
fujun19成员
7月10日 评论:

/assign @newstarzj

likedislike
CANN-robotCANN-robot成员
7月10日 将 newstarzj 设为负责人
zhangjie
zhangjie成员
7月10日 评论:

7月13日完成

likedislike
zhangjiezhangjie成员
7月14日 关联了pull request:fix: [slog] 将 src/dfx/log 文件覆盖率提升至 100% (#719)
Jjinyingqi成员
7月15日 添加了label:resolved
jinyingqi成员
7月17日 评论:

🔔 @fujun19您好,关联PR #3627 已合并,请在2天内检视,超期将视为检视通过,Issue将自动关闭。

likedislike
jinyingqi成员
7月18日 评论:

🔔 @fujun19您好,关联PR #3627 已合并,请在2天内检视,超期将视为检视通过,Issue将自动关闭。

likedislike
zhangjiezhangjie成员
7月18日 issue状态由 进行中 改变为 已完成
zhangjiezhangjie成员
7月18日 关闭了 issue