写点什么

使用 Playwright 控制浏览器的启动、停止和等待

  • 2024-05-11
    江西
  • 本文字数:1000 字

    阅读完需:约 3 分钟

简介

Playwright 是一个强大的自动化测试工具,它不仅可以模拟用户在浏览器中的行为,还能够灵活控制浏览器的启动、停止和等待操作。在本文中,我们将探讨如何使用 Playwright 进行这些操作。

获取更多技术资料,请点击!

启动停止浏览器

我们之前是使用with方法来控制浏览器启动和停止,现在我们来介绍一下使用start stop来控制浏览器,代码如下:


from playwright.sync_api import sync_playwright
playwright = sync_playwright().start()
browser = playwright.chromium.launch(headless=False)page = browser.new_page()page.goto("https://www.ceshiren.com/")

browser.close()playwright.stop()
复制代码

等待

我们之前介绍过,相对于 selenium,playwright 执行速度会更快,为了便于我们查看执行的过程,我们可以加上等待来减缓执行,但是与 selenium 不同,playwright 通过slow_mo (单位是毫秒)减慢执行速度,它的作用范围是全局的,从启动浏览器到操作元素每个动作都会有等待间隔,方便在出现问题的时候看到页面操作情况。使用方法如下:


chromium.launch(headless=False, slow_mo=50)
复制代码


示例代码如下:


from playwright.sync_api import sync_playwright

with sync_playwright() as p: browser = p.chromium.launch(headless=False, slow_mo=1000) page = browser.new_page() page.goto("https://www.baidu.com") print(page.title()) page.fill('#kw', "测试人社区") page.click('#su') browser.close()
复制代码


注:与 selenium 不同,playwright 不再支持 time.sleep(),而是使用 page.wait_for_timeout()来实现等待,当我们调试时需要等待,即可使用该方法。


示例代码如下:


from playwright.sync_api import sync_playwright


with sync_playwright() as p: browser = p.chromium.launch(headless=False, slow_mo=1000) page = browser.new_page() page.goto("https://www.baidu.com") print(page.title()) # 等待5秒 page.wait_for_timeout(5000) page.fill('#kw', "测试人社区") page.click('#su') # 等待3秒 page.wait_for_timeout(3000) browser.close()
复制代码


运行结果如下:



总结

本文主要介绍了一些 playwright 的简单使用,playwright 的使用与 selenium 有一些不同,我们需要注意不同点,比如 playwright 默认是无头模式运行以及等待的改变。下一篇文章我们将介绍 playwright 定位元素的方法。

用户头像

社区:ceshiren.com 微信:ceshiren2021 2019-10-23 加入

微信公众号:霍格沃兹测试开发 提供性能测试、自动化测试、测试开发等资料,实时更新一线互联网大厂测试岗位内推需求,共享测试行业动态及资讯,更可零距离接触众多业内大佬。

评论

发布
暂无评论
使用 Playwright 控制浏览器的启动、停止和等待_霍格沃兹测试开发学社_InfoQ写作社区