You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在cocotb 1.5.2中获取当前运行的测试用例名称

cocotb 1.5.2 单测试用例名称获取实现

你要实现为每个测试用例单独生成报告、绘制图表的工具函数,首先需要在工具逻辑中获取当前运行的测试用例名称。针对cocotb 1.5.2版本,最小可复现示例中的get_test_name函数可按如下方式实现:

import cocotb

@cocotb.test()
async def my_wonderful_test(dut):
    print(get_test_name(dut))

def get_test_name(dut):
    # cocotb 1.5.2 全局回归管理单例持有当前运行态的测试对象
    running_test = cocotb.regression_manager._test
    if running_test is None:
        raise RuntimeError("无正在运行的测试用例,禁止在测试生命周期外调用该函数")
    # 未在@cocotb.test()中指定name参数时,返回值即为测试函数名
    return running_test.name

运行上述测试用例,控制台会正常输出my_wonderful_test,符合预期。

补充说明

  • 该实现仅适配cocotb 1.5.x版本,1.6及以上版本对回归管理器的内部属性做了调整,升级版本后需要对应修改获取逻辑。
  • 拿到测试名称后,直接将名称作为报告、图表文件的唯一标识前缀即可,避免不同测试用例的输出文件互相覆盖。
  • 如果在@cocotb.test()装饰器中传入了自定义name参数,running_test.name会返回你自定义的名称,更适合作为测试报告的展示标识。

内容的提问来源于stack exchange,提问作者Bob

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.30 22:24:18