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"
    • 生成报告查看结果
相关推荐
A000—ic测试座(陈佳鑫)3 小时前
国内国产替代的DC-DC芯片测试座企业整套解决方案
测试用例
程序员小远1 天前
接口测试知识总结
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·接口测试
测试秃头怪1 天前
Postman中变量的使用
自动化测试·软件测试·python·测试工具·测试用例·接口测试·postman
测试19982 天前
UI自动化测试:窗口截图&文件上传实战
自动化测试·软件测试·python·selenium·测试工具·职场和发展·测试用例
咖啡星人k2 天前
2026 AI 自动化测试:让 AI 帮你写用例、跑测试、修 Bug(MonkeyCode 云端实战)
人工智能·功能测试·单元测试·测试用例·bug·集成测试
daopuyun3 天前
GB/T 25000.51-2016标准开展软件兼容性测试(附测试用例)
软件测试·测试用例·兼容性测试