菜单 学习猿地 - LMONKEY

VIP

开通学习猿地VIP

尊享10项VIP特权 持续新增

知识通关挑战

打卡带练!告别无效练习

接私单赚外块

VIP优先接,累计金额超百万

学习猿地私房课免费学

大厂实战课仅对VIP开放

你的一对一导师

每月可免费咨询大牛30次

领取更多软件工程师实用特权

入驻
468
0

Pytest学习(二十二)- allure之@allure.link()、@allure.issue()、@allure.testcase()的使用

原创
05/13 14:22
阅读数 88547

一、先看看三个装饰器源码

def link(url, link_type=LinkType.LINK, name=None):
    return safely(plugin_manager.hook.decorate_as_link(url=url, link_type=link_type, name=name))


def issue(url, name=None):
    return link(url, link_type=LinkType.ISSUE, name=name)


def testcase(url, name=None):
    return link(url, link_type=LinkType.TEST_CASE, name=name)

二、知识点

  • issue()和testcase()其实调用的也是link(),只是link_type不一样
  • 必传参数 url:跳转的链接
  • 可选参数 name:显示在allure报告的名字,如果不传就是显示完整的链接;建议传!!不然可读性不高
  • 可以理解成:三个方法是一样的,我们都提供跳转链接和名字,只是链接的type不一样,最终显示出来的样式不一样而已【type不一样,样式不一样】
  • 如果你喜欢,只用@allure.link()也可以
  • 而出现三个装饰器的原因是为了更好地将链接分类【访问连接、Bug链接、测试用例链接】

示例代码如下:

# -*- coding: utf-8 -*-
# @Time    : 2020/12/12 15:49
# @Author  : longrong.lang
# @FileName: test_allurelink.py
# @Software: PyCharm
# @Cnblogs :https://www.cnblogs.com/longronglang
import allure
from allure_commons.types import LinkType


@allure.issue("https://v.youku.com/v_show/id_XNDk5MDQyODI1Ng==.html", "youku 三个金币")
def test_issue():
    pass


@allure.link("https://www.baidu.com/", link_type=LinkType.LINK, name="baidu")
def test_link():
    pass


@allure.testcase("https://www.cnblogs.com/longronglang/", "久曲健博客园")
def test_testCase():
    pass

运行结果,查看allure报告

  • test_issue

  • test_link

  • test_testCase

三、总结

三个装饰器的作用是一样的,都是超链接跳转,至于如何使用,请视自己情况,调整

发表评论

0/200
468 点赞
0 评论
收藏