pytest-allure 生成测试报告

目录

前言:

pytest 中 yield 和 return 的区别和相同点

共同点

区别

usefixtures 与传 fixture 区别

Pytest 常用的插件

一键安装多个模块


前言:

在软件测试中,生成清晰、易读的测试报告是非常重要的。pytest-allure是一个流行的测试框架和报告生成工具,它可以帮助测试团队生成美观、详细的测试报告。

  • 安装模块:pip install allure-pytest
# 第一步:生成xml数据
pytest --alluredir=./report/xml testcase.py
# 第二步:生成html文件
allure generate --clean ./report/xml -o ./result/html

将截图加入到报告里

  • allure.attach(f, '图片名', allure.attachment_type.JPG)
# -*- coding: utf-8 -*-

from selenium import webdriver
import allure

browser=webdriver.Chrome()
browser.get("https://www.baidu.com")
try:
    browser.find_element_by_id("zhiyi").send_keys('test123456')  # 输入密码,
except Exception as e:
    file_name = './test.jpg'
    browser.save_screenshot(file_name)  # 截图函数
    '''allure添加截图附件'''
    with open(file_name, mode='rb') as file:
        # 读取文件,将读取的结果作为参数传给allure
        f = file.read()  
    # 把图片添加到allure操作步骤里
    allure.attach(f, 'login', allure.attachment_type.JPG)  
    raise e

pytest 中 yield 和 return 的区别和相同点

共同点
  • return 和 yield 都可以返回值
区别
  • yield 返回值后,后面的代码还会继续运行
  • return 返回值后,后面的代码不会继续运行
# -*- coding: utf-8 -*-

import pytest

@pytest.fixture()
def openbrower():
    print("打开浏览器")
    yield "返回浏览器"
    print("关闭浏览器")

def test01(openbrower):
    print(openbrower)

运行结果

  • 证明 yield 后面的代码仍执行了
testcase.py::test01 打开浏览器
# 返回值
返回浏览器
PASSED关闭浏览器

usefixtures 与传 fixture 区别

  • fixture 有返回值,那么 usefixture 就无法获取到返回值,这个是装饰器 usefixture 与用例直接传 fixture 参数的区别。

  • 当 fixture 需要用到 return 出来的参数时,只能讲参数名称直接当参数传入,不需要用到 return 出来的参数时,两种方式都可以

  • @pytest.mark.usefixtures("装饰器名")
    

Pytest 常用的插件

  • pytest-selenium   集成 selenium

  • pip install allure-pytest   生成漂亮的 allure 测试报告

  • pip install pytest-sugar   优化运行效果

  • pip install pytest-rerunfailures   执行用例失败后重新运行

  • pip install pytest-xdist   多线程并行与分布式执行

  • pip install pytest-assume   多条断言前面报错后面依然执行

  • pip install pytest-cover   测试覆盖率

一键安装多个模块

  • 创建 requirement.txt 文件
selenium==3.0
requests
  • pip install -r requirement.txt

  作为一位过来人也是希望大家少走一些弯路

在这里我给大家分享一些自动化测试前进之路的必须品,希望能对你带来帮助。

(软件测试相关资料,自动化测试相关资料,技术问题答疑等等)

相信能使你更好的进步!

点击下方小卡片

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值