安装PIPpip install --upgrade pip pip install playwright playwright installCONDAconda config --add channels conda-forge conda config --add channels microsoft conda install playwright playwright install这些命令将下载 Playwright 包并为 Chromium、Firefox 和 WebKit 安装浏览器二进制文件。要修改此行为,请参阅安装参数。使用一旦安装,你可以在 Python 脚本中导入 Playwright,并启动任何 3 种浏览器(chromium、firefox 和 webkit)。from playwright.sync_api import sync_playwright with sync_playwright() as p: browser = p.chromium.launch() page = browser.new_page() page.
Playwright提供了一个Pytest插件,用于编写端到端测试。要开始使用它,请参考入门指南。用法要运行您的测试,请使用Pytest命令行界面(CLI)。pytest --browser webkit --headed如果您想自动添加CLI参数而无需指定它们,可以使用pytest.ini文件:CLI参数--headed:以有头模式运行测试(默认:无头模式)。--browser:在不同的浏览器中运行测试,如chromium、firefox或webkit。可以多次指定(默认:chromium)。--browser-channel:要使用的浏览器渠道。--slowmo:将Playwright操作放慢指定的毫秒数。这对于查看操作过程很有用(默认:0)。--device:要模拟的设备。--output:测试生成的文件存放目录(默认:test-results)。--tracing:是否为每个测试记录跟踪。选项为on、off或retain-on-failure(默认:off)。--video:是否为每个测试录制视频。选项为on、off或retain-on-failure(默认:off)。--sc
Playwright Trace Viewer是一个GUI工具,可以探索记录的Playwright测试的迹线。这意味着您可以在测试的每个操作中前后移动,并在可视化界面上看到每个操作期间发生的情况。您将学到如何记录迹线如何打开HTML报告如何打开迹线查看器记录迹线您可以使用browser_context.tracing API来记录迹线,具体操作如下:browser = chromium.launch() context = browser.new_context() # 在创建/导航页面之前开始迹线记录。 context.tracing.start(screenshots=True, snapshots=True, sources=True) page = context.new_page() page.goto("https://playwright.dev") # 停止迹线记录并将其导出为zip存档。 context.tracing.stop(path = "trace.zip")这将记录迹线并将其保存到名为trace.zip的文件
Playwright 提供了一种生成测试用例的能力,它可以在您在浏览器中执行操作时为您生成测试用例,是快速入门测试的好方法。Playwright 会检查您的页面并确定最佳定位器,优先考虑 role、text 和 test id 定位器。如果生成器找到多个与定位器匹配的元素,它将改进定位器,使其具有唯一标识目标元素的鲁棒性。使用 Playwright Inspector 生成测试用例运行 codegen 命令将会打开两个窗口:一个是浏览器窗口,您可以在其中与要测试的网站进行交互;另一个是 Playwright Inspector 窗口,您可以在其中录制测试用例并将其复制到编辑器中。运行 Codegen使用 codegen 命令运行测试用例生成器,后面跟着您想要为之生成测试用例的网站的 URL。URL 是可选的,您也可以在运行命令时不添加 URL,然后直接将 URL 输入到浏览器窗口中。playwright codegen demo.playwright.dev/todomvc 录制测试用例运行 codegen 命令并在浏览器窗口中执行操作。Playwright 将生成用户交互的代
您可以运行单个测试、一组测试或所有测试。测试可以在一个浏览器或多个浏览器上运行。默认情况下,测试以无头模式运行,这意味着在运行测试时不会打开浏览器窗口,并且结果将显示在终端中。如果您希望在有头模式下运行测试,请使用 --headed 标志。在 Chromium 上运行测试pytest运行单个测试文件pytest test_login.py运行一组测试文件pytest tests/todo-page/ tests/landing-page/运行指定函数名的测试pytest -k "test_add_a_todo_item"以有头模式运行测试pytest --headed test_login.py在特定浏览器上运行测试pytest test_login.py --browser webkit在多个浏览器上运行测试pytest test_login.py --browser webkit --browser firefox并行运行测试pytest --numprocesses auto(这假设已安装 pytest-xdist。更多信息请参阅此处。)有关更多信息,请参阅
Playwright的断言功能是专门为动态Web设计的。它会自动重试,直到满足所需条件。Playwright具有内置的自动等待功能,意味着它会在执行操作之前等待元素可操作。Playwright提供了expect函数用于编写断言。请看下面的示例测试,了解如何使用定位器和基于Web的断言编写测试。import re from playwright.sync_api import Page, expect def test_homepage_has_Playwright_in_title_and_get_started_link_linking_to_the_intro_page(page: Page): page.goto("https://playwright.dev/") # 期望标题中包含某个子字符串。 expect(page).to_have_title(re.compile("Playwright")) # 创建一个定位器。 get_started = page.get_by_role(&qu
Playwright是专门为端到端测试的需求而创建的。Playwright支持所有现代渲染引擎,包括Chromium、WebKit和Firefox。可以在Windows、Linux和macOS上本地或CI中进行测试,可以无头(headless)或有界面(headed)进行测试,还支持原生移动设备仿真。Playwright推荐使用官方的Playwright Pytest插件编写端到端测试。该插件提供了上下文隔离功能,并且可以立即在多个浏览器配置上运行。或者,您也可以使用该库手动编写适合您所选测试运行器的测试基础架构。Pytest插件使用的是Playwright的同步版本,该库还提供了一个异步版本。首先安装Playwright并运行示例测试,以查看其运行效果。安装Pytest插件:pip install pytest-playwright安装所需的浏览器:playwright install添加示例测试在当前工作目录或子目录中创建一个文件,文件名为test_my_application.py,内容如下:import re from playwright.sync_api import Pa
贝克街的捉虫师
十年测试老鸟佛系分享一些测试小技能、开源小工具......