如何向pytest测试报告中添加截图附件

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

文章主要介绍如何使用pytest编写测试用例,结合Playwright进行网页自动化测试时,捕获网页截图,并将截图添加到pytest-html报告中,以提升测试结果的可视化和可理解性。

第一步:安装依赖库 🛠️

在开始自动化测试之前,首先需要安装必要的依赖库,以确保测试顺利进行。测试用例中主要用到了pytest、pytest-html 和 playwright。

pip install pytest pytest-html playwright

第二步:编写测试用例 ✍️

import pytest
from playwright.sync_api import sync_playwright
from pytest_html import extras
import time


def test_screenshot(extra): # 函数名和文件名必须以"test_"开头
    with sync_playwright() as p:
        browser = p.chromium.launch(headless=False)
        context = browser.new_context()
        page = context.new_page()
        # 访问百度
        page.goto("https://www.baidu.com")
        # 在搜索栏输入Hello World
        page.fill("#kw","Hello World")
        # 点击百度一下
        page.click("text=百度一下")
        # 等待1秒,使搜索结果出现
        time.sleep(1)
        # 截图
        screenshot = page.screenshot(path='./image/screenshot.png')
        # 将截图作为附件添加到报告中
        extra.append(extras.image('./image/screenshot.png'))

        page.close()
        context.close()
        browser.close()

pytest-html 提供了 from pytest_html import extras 这个模块,它允许您向测试报告中添加额外的自定义信息,从而增强报告的可读性和信息内容。通过 extras 模块,您可以在测试报告中添加自定义的文本、链接、图像等元素。

  1. extras.text()
# 在报告中添加自定义文本
extras.text("这是一个自定义文本信息。")
  1. extras.url()
# 在报告中添加链接
extras.url("https://www.example.com", "访问示例网站")
  1. extras.image()
# 在报告中添加图像
extras.image("screenshot.png", "截图示例")

4.extras.video()

# 在报告中添加视频
extras.video("test_video.mp4", "测试视频")

第三步:终端运行 💻

打开项目路径终端,运行 pytest --html=report.html

在这里插入图片描述

第三步:查看报告截图 📊

展开测试步骤即可查看截图

请添加图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值