Python使用pytest-playwright的原因分析

1 用playwright能不能不用这个包?

首先田辛老师强调,如果你不想使用 pytest-playwright,你仍然可以在你的 Python 项目中使用 Playwright。只不过需要一些额外的配置。 我们会在下次博客中介绍如何PyUnit+playwright。 下面的代码是一个单纯的playwright的例子

1

2

3

4

5

6

7

from playwright.sync_api import Playwright, sync_playwright_with_browsers

with sync_playwright_with_browsers() as playwright:

    browser = playwright.chromium.launch(headless=False)

    page = browser.new_page()

    page.goto('https://www.baidu.com')

    browser.close()

此代码使用 sync_playwright_with_browsers() 函数启动 Playwright 实例,启动 Chromium 浏览器,导航至 Google 主页,然后关闭浏览器。只不过Python不会识别它是一段自动化测试代码, 只是当成一段普通的Python程序去运行。

2 安装

安装方法其实田辛老师在前两天的文档里面提过,通过pip进行安装:
pip install pytest-playwright

3 代码和文档

田辛老师还是希望大家去看原始文档的,所以给出如下链接:

pytest-playwright 的官方 Github 存储库:
https://github.com/pytest-playwright/pytest-playwright 。
在这里您可以找到源代码、文档、问题跟踪器和与包相关的其他资源。

pytest-playwright 的官方文档托管在 Read the Docs:
https://pytest-playwright.readthedocs.io/en/latest/
该文档包括安装说明、使用示例、配置选项等。

4 示例代码

以下是如何使用 pytest-playwright 测试一个简单网站的示例:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

import pytest 

from playwright.sync_api import Playwright, sync_playwright 

@pytest.fixture(scope='module'

def playwright() -> Playwright: 

    with sync_playwright() as playwright: 

        yield playwright 

@pytest.fixture(scope='module'

def browser(playwright: Playwright): 

    browser = playwright.chromium.launch(headless=False

    yield browser 

    browser.close() 

@pytest.fixture(scope='module'

def page(browser): 

    page = browser.new_page() 

    yield page 

    page.close() 

def test_baidu_homepage(page): 

    page.goto('https://www.baidu.com'

    assert page.title() == '百度一下,你就知道'

以上的代码使用, 创建一个 Playwright 实例,启动一个 Chromium 浏览器,并创建一个新页面。然后使用 test_baidu_homepage 方法使用 page fixture 导航到网站主页并检查页面标题。

要使用 pytest-playwright 运行此测试,请将代码保存到名为 test_baidu.py 的文件中,然后从命令行运行以下命令:

1

pytest test_google.py

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

sinat_40572875

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值