Python Playwright 安装

官方文档

复制代码
https://playwright.net.cn/python/docs/actionability

1,Pip 安装

复制代码
# 安装 Playwright 库
pip install playwright

# 自动安装浏览器二进制文件(Chromium/Firefox/WebKit)
playwright install

playwright install 默认安装全部 3 种浏览器,若只需单个,可指定参数:

复制代码
# 仅安装Chromium(Chrome内核)
playwright install chromium
# 仅安装Firefox
playwright install firefox
# 仅安装WebKit(Safari内核)
playwright install webkit

2,安装 Playwright Pytest

Playwright 建议使用官方的 Playwright Pytest 插件来编写端到端测试。它开箱即用地提供了上下文隔离,并支持在多种浏览器配置上运行。

安装 Pytest 插件

复制代码
pip install pytest-playwright

3,添加示例测试

在当前工作目录或子目录中创建一个遵循 test_ 前缀约定的文件,例如 test_example.py,并将以下代码放入其中。请确保您的测试名称也遵循 test_ 前缀约定。

pycharm测试配置参数

复制代码
# 正确的 pytest + Playwright 测试用例
from playwright.sync_api import sync_playwright


def test_baidu():
    # 1. 启动 Playwright
    with sync_playwright() as p:
        # 2. 启动浏览器(headed=显示界面,无头模式默认True)
        browser = p.chromium.launch(headless=False)
        # 3. 创建新页面(核心实例:小写 page)
        page = browser.new_page()

        # 4. 访问百度(正确网址)
        page.goto("https://www.baidu.com")
        # 5. 打印页面标题
        print("页面标题:", page.title())
        # 6. 等待5秒
        page.wait_for_timeout(5000)

        # 7. 关闭浏览器
        browser.close()

D:\py\python.exe "D:/pychamr/PyCharm 2024.1.3/plugins/python/helpers/pycharm/_jb_pytest_runner.py" --path D:\pycharmdome\pythonProject15\test_run.py -- -v --headed 
Testing started at 下午7:42 ...
Launching pytest with arguments -v --headed D:\pycharmdome\pythonProject15\test_run.py --no-header --no-summary -q in D:\pycharmdome\pythonProject15

============================= test session starts =============================
collecting ... collected 1 item

test_run.py::test_case PASSED                                            [100%]页面标题: 百度一下,你就知道


======================= 1 passed, 2 warnings in 10.24s ========================

进程已结束,退出代码为 0
相关推荐
小徐学编程-zZ12 小时前
量产测试数据
python·压力测试·数据库架构
QQ80578065112 小时前
django基于机器学习的电商评论情感分析系统设计实现
python·机器学习·django
wx090913 小时前
stata实现机器学习的环境配置
python·机器学习·stata
nuowenyadelunwen14 小时前
CS 61A Lab 2 笔记:短路求值、高阶函数与 Lambda 表达式
python·函数式编程·cs61a·berkeley
qq_4228286215 小时前
android图形学之SurfaceControl和Surface的关系 五
android·开发语言·python
weixin_4440129316 小时前
c++如何将std--vector直接DUMP到二进制文件_指针地址直写【附代码】
jvm·数据库·python
woxihuan12345616 小时前
Go语言中--=运算符详解:位右移赋值操作的原理与应用
jvm·数据库·python
石山代码16 小时前
Python 数据分析三大库:NumPy + Pandas + Matplotlib
python·数据分析·numpy
如竟没有火炬16 小时前
用队列实现栈
开发语言·数据结构·python·算法·leetcode·深度优先
yivifu16 小时前
CustomTkinter的布局管理器介绍及应用
python·gui·customtkinter·pdf去水印