提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
文章主要介绍如何使用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 模块,您可以在测试报告中添加自定义的文本、链接、图像等元素。
- extras.text()
# 在报告中添加自定义文本
extras.text("这是一个自定义文本信息。")
- extras.url()
# 在报告中添加链接
extras.url("https://www.example.com", "访问示例网站")
- extras.image()
# 在报告中添加图像
extras.image("screenshot.png", "截图示例")
4.extras.video()
# 在报告中添加视频
extras.video("test_video.mp4", "测试视频")
第三步:终端运行 💻
打开项目路径终端,运行 pytest --html=report.html
第三步:查看报告截图 📊
展开测试步骤即可查看截图