一、测试环境
硬件:S920X20
BMC Version: 26.03
二、问题描述
设置自定义模式出风口温度查看操作日志( SmartCooling_XH321V5_202),测试过程中,日志信息与预期不符,如图所示:
问题:预期结果中BMC的用户名为Administrator,实际用户名为Admin,对比失败。疑似脚本问题,请确认。
一、测试环境
硬件:S920X20
BMC Version: 26.03
二、问题描述
设置自定义模式出风口温度查看操作日志( SmartCooling_XH321V5_202),测试过程中,日志信息与预期不符,如图所示:
答案内容由AI生成,仅供参考:
| 项目 | 内容 |
|---|---|
| 问题性质 | 测试脚本预期与实际日志格式不匹配 |
| 根本原因 | 脚本要求用户名为 Administrator,但 BMC 日志记录为 Admin |
| 是否功能异常? | 否 —— 配置已成功应用 |
| 推荐解决方式 | 修改测试脚本正则表达式以兼容 Admin 和 Administrator |
| 后续建议 | 建立日志字段标准化规范,避免因命名差异导致误判 |
在测试 SmartCooling_XH321V5_202(设置自定义模式出风口温度)时,操作日志校验失败。具体表现为:
Administrator。Admin。测试环境如下:
根据提供的日志信息:
['Redfish,Administrator@.*,Set target temperature to %s of outlet temperature','adjustment policy(?:\\(?:\\:0x[0-9a-fA-F]+\\)?)\\s* successfully']
该表达式明确要求用户名为 Administrator。
2026-04-17 03:51:19 Redfish,Admin@192.168.40.23,thermal_mgmt,Set target temperature to 53 of outlet temperature adjustment policy(id:0x7) successfully
实际记录的用户名为 Admin,而非 Administrator。
核心问题:日志中的用户标识与预期不符,导致正则校验失败。
结合上下文与知识库信息分析,问题可能源于以下方面:
Administrator,但在部分日志系统中简写为 Admin。SmartCooling_XH321V5_202.py 中硬编码了 "Administrator" 字符串作为预期值。"Admin",而脚本未同步更新正则表达式,则必然导致校验失败。Oem/openUBMC/FanSpeedCustom/OutletTargetTemperatureCelsius)。Admin 账号,则日志自然记录为 Admin。| 实体/文档 | 关联内容 |
|---|---|
operation log(操作日志) |
记录所有执行命令及其结果,包括用户信息、时间、操作类型。 |
Redfish |
作为配置接口,其操作会生成 Operational Log 条目。 |
Postman |
常用于测试 Redfish 接口,但在真实场景中由自动化框架调用。 |
文档 #1 (【iTestSmart】...设置SmartCooling模式) |
提到:IPMI 设置 SmartCooling 模式后日志显示成功但配置失败,说明日志与实际状态可能脱节。 |
知识图谱关系:Redfish → Operational Log |
Redfish 动作必须触发操作日志写入,但用户名称来源于请求上下文。 |
此问题属于测试脚本预期与 BMC 实际日志行为不一致,而非功能缺陷。
successfully。Admin vs Administrator)。修改测试脚本中对用户名的匹配规则,支持多种格式:
# 修改前(严格)
"Redfish,Administrator@.*,..."
# 修改后(兼容 Admin / Administrator)
"Redfish,(?:Admin(?:istrator)?)+@.*,..."
优点:无需修改 BMC 行为,适配现有日志输出。
影响范围:仅影响测试脚本断言逻辑。
若业务要求日志统一使用全称 Administrator,则需修改 BMC 日志模块行为:
thermal_mgmt 模块)。
缺点:需升级 BMC 固件,风险高,不推荐仅为此调整。
引入 用户别名映射表 或 日志字段标准化处理层,在比对前先做清洗:
def normalize_username(log_entry):
return log_entry.replace("Admin@", "Administrator@")
适用于多用户别名场景,提升测试鲁棒性。
| 项目 | 内容 |
|---|---|
| 问题性质 | 测试脚本预期与实际日志格式不匹配 |
| 根本原因 | 脚本要求用户名为 Administrator,但 BMC 日志记录为 Admin |
| 是否功能异常? | 否 —— 配置已成功应用 |
| 推荐解决方式 | 修改测试脚本正则表达式以兼容 Admin 和 Administrator |
| 后续建议 | 建立日志字段标准化规范,避免因命名差异导致误判 |
tc_script.scripts.inner_case...SmartCooling_XH321V5_212.py(类似测试用例)operation log 机制说明
建议提交脚本修复 PR,并添加注释说明用户名兼容性处理逻辑。
你们环境的默认用户用户名是Admin是吗?我们这边内部都是写死的Administrator。你看下能否修改下你们那边的环境用户名和Administrator保持一致呢?