pytest allure报告的应用以及插件

该文章讲述了allure的更多应用方法,如需要了解allure的安装和基本使用方法请查看我的另一篇文章链接: pytest中allure自动化测试报告的配置与安装.

  • 在测试执行期间收集结果:
> pytest -s -q --alluredir=reportdir      
# reportdir为存放报告的地址
  • 测试完成后在线查看报告:
> allure serve reportdir
  • 打开报告:
> allure open -h 127.0.0.1 -p 8888 reportdir
# -h 后面跟着的是访问地址  -p后面跟着的是端口号可以自定义
  • 自动开启空闲端口号打开报告的指令:
> allure open report目录

allure的定制

如果需要在测试报告中需要看到测试功能、子功能或场景以及测试步骤需要用到装饰器@Feature\story\step

# 功能类或方法发上加装饰器
@allure.feature('功能名称')

# 子功能的方法上装饰器
@allure.story('子功能名称')
  • 若是要标注功能模块下的具体步骤,需在代码中加入如下代码:
with allure.step('步骤1'):     # 在代码执行中加入某一个步骤的说明
	allure.attach("说明文本1""附件1")  #在步骤下加入附件

# 若是要在步骤中加的附件类型为网页,则方法如下
with allure.step('步骤2'):
	allure.attach('

这是一个提示信息

'
, '测试', allure.attachment_type.HtML) # 结构为(body(网页内容),name,attachment_type) # 若是要加上错误截图,则方法如下 with allure.step('步骤3'): allure.attach('1.jpg', '测试', allure.attachment_type.JPG)

按照优先级或标记测试用例的方法进行一定范围的执行用例

测试通常有P0,冒烟测试等多个测试步骤,每个测试步骤的侧重功能点也不一样,我们可以通过mark标记的方式,或设置severity的优先级来附加标记,用于执行我们指定的用例

pytest.mark标记

  • 首先我们需要创建一个ini文件命名为pytest.ini,在该文件下配置你需要用到的标记名:
[pytest]
markes=
	smoke:smoke test
	unit:unit test
  • 之后在需要标记的测试类或测试方法上方加上如下装饰器:
@pytest.mark.smoke
def test():
	pass
  • 运行时执行指令:
> pytest -m smoke

allure.severity标记

severity的优先级分为5个级别,分别是:Trivial(不重要)、Minor(不太重要)、normal(正常问题)、Critical(严重)、Blicker(阻塞)

  • 在需要分等级的方法或类上面加:
@allure.severity(allure.severity_level.TRIVIAL)
def test():
	pass
# TRIVIAL为指定级别
  • 运行时执行指令:
> pytest -m smoke

给测试方法或测试类添加详细描述

  • 可通过添加html源代码来体现:
@allure.description_html("""

测试

"""
)
  • 也可直接添加描述
@allure.description("测试")
  • 可给用例加上标题
@allure.title("测试")
  • 若是有网页可详细描述改用例也可以附上网址
@allure.link('https://www.baidu.com/')

以上描述都能体现在生成的allure报告中,使测试报告的可读性进一步提升

(转载注明出处)

你可能感兴趣的:(pytest,python,单元测试)