Allure2 报告中添加用例链接

一. Allure2 报告中添加用例连接

在 Allure 测试报告中,将测试用例与缺陷(Bug)进行关联,可以清晰地展示测试结果与项目需求之间的关系。

这种集成方式能帮助团队快速理解每个测试用例的背景和目的。特别是在测试失败或缺陷出现时,这种关联能显著提升问题定位和处理的效率。


1.1 添加任何自定义链接(使用@allure.link(url, name)装饰器)

通过自定义添加的链接信息默认仅显示URL或者字符,无特殊的图标显示

  • 代码示例

    python 复制代码
    import allure
    import pytest
    
    @allure.step('步骤1:登录')
    def simple_step1(username, password):
        '''定义一个测试步骤'''
        print(f"输入用户名: {username} ")
        print(f"输入密码: {password} ")
    
    @allure.step("步骤2:搜索")
    def simple_step2(step_param):
        '''定义一个测试步骤'''
        print(f"完成搜索 {step_param} 功能")
    
    # 直接显示URL
    @allure.link('https://blog.csdn.net/shiyu_951/article/details/164035280')
    @allure.title("验证登录功能")
    @pytest.mark.parametrize('username', ["admin", "user"])
    @pytest.mark.parametrize('password', ['123456', 'value2'])
    def test_parametrize_with_two_parameters(username, password):
        simple_step1(username, password)
        if username == 'admin':
            assert username == "admin" and password == "123456"
        elif username == 'user':
            assert username == "user" and password == "value2"
    
    # 显示 name 信息,不直接显示URL
    @allure.link('https://blog.csdn.net/shiyu_951/article/details/164035280', name='博客地址url')
    @allure.title("验证搜索功能")
    @pytest.mark.parametrize('param1', ["pytest", "allure"], ids=['search pytest', 'search allure'])
    def test_parameterize_with_id(param1):
        simple_step2(param1)
    • 效果如下
      • 直接显示URL

      • 显示 name 信息,不直接显示URL


1.2 关联测试管理系统中的测试用例链接(使用@allure.testcase(url, name)装饰器)

通过 @allure.testcase(url, name) 添加的链接信息前会带 case 资源图标

  • 代码示例

    python 复制代码
    import allure
    
    # 添加用例管理系统链接
    TEST_CASE_LINK = 'https://blog.csdn.net/shiyu_951/article/details/164035280'
    
    
    @allure.testcase(TEST_CASE_LINK, '用例管理系统')
    @allure.step
    @allure.title("验证登录功能")
    def test_double_int(username="admin", password="123456"):
        with allure.step("测试步骤一:输入用户名"):
            print(f"输入: {username} ")
        with allure.step("测试步骤二:输入密码"):
            print(f"输入: {password} ")
        with allure.step("测试步骤三:断言"):
            assert username == "admin" and password == "123456"
    • 生成报告查看结果

1.3 关联缺陷跟踪系统中的 Bug 链接(使用 allure.issue.title实现)

通过 @allure.issue(url, name) 添加的链接信息前会带 bug 图标

  • 代码示例

    python 复制代码
    import allure
    
    # 添加用例管理系统链接
    TEST_CASE_LINK = 'https://blog.csdn.net/shiyu_951/article/details/164035280'
    
    
    @allure.issue(TEST_CASE_LINK, '用例管理系统')
    @allure.step
    @allure.title("验证登录功能")
    def test_double_int(username="admin", password="123456"):
        with allure.step("测试步骤一:输入用户名"):
            print(f"输入: {username} ")
        with allure.step("测试步骤二:输入密码"):
            print(f"输入: {password} ")
        with allure.step("测试步骤三:断言"):
            assert username == "admin" and password == "123456"
    • 生成报告查看结果
相关推荐
螺丝钉tina14 小时前
[Playwright][08] Upload 模块自动化:如何设计真实业务测试用例?
运维·自动化·测试用例
TomEval18 小时前
【测AI】第22篇:Agent 系统测试方法 — AI 学会“动手“了
人工智能·python·prompt·aigc·测试用例
车软学堂1 天前
CANoe自动化:跑起第一个测试用例
运维·车载系统·自动化·汽车·测试用例
jiangbqing3 天前
测试功能点,测试用例、测试报告全流程技能直接用
功能测试·测试用例·测试用例 测试报告
自动化测试行业观察3 天前
AI智能测试用例生成技术解析:多源融合+LLM混合生成方案与实践
自动化测试·人工智能·科技·测试用例·智能化测试·ai测试平台·ai智能遍历
TomEval3 天前
【测AI】第20篇:大模型安全测试 —— 越狱攻击与防护
人工智能·python·功能测试·ai·aigc·测试用例·安全性测试
TomEval8 天前
【测AI】第17篇:大模型评测方法论 —— LLM 怎么测?
人工智能·python·aigc·测试用例
TomEval9 天前
【测AI】第16篇:模型公平性与可解释性测试 — AI 的偏见与黑箱
人工智能·python·功能测试·ai·测试用例
川石课堂软件测试10 天前
涨薪技术|0到1学会性能测试第9课-HTTP响应统计
数据库·功能测试·网络协议·http·kubernetes·单元测试·测试用例
川石课堂软件测试11 天前
JMeter异步接口测试实战
数据库·python·jmeter·mysql·kubernetes·测试用例·prometheus