详解Playwright启动Edge、Chrome和Firefox的正确方法

开源
Chromium不是我们熟知的Chrome!Chromium OS是一个开源项目,主要由开发人员使用,其代码可供任何人检出、修改和构建。大家可以简单的理解二者的区别:Chromium 是开源的,Chrome 是闭源的,Chrome 特性更丰富。

相信做过web自动化测试的同学们在选择产品时,都会重点会关注自动化测试产品支持哪些浏览器。Playwright 的浏览器,包括 Chrome 和 Edge(基于 Chromium)、Firefox和Safari(基于 WebKit)。今天在这里,重点讲解一下启动这些浏览器的脚本该如何编写!

默认启动的是chromium

重要的事情说三遍!

playwright执行默认运行的浏览器是chromium!

playwright执行默认运行的浏览器是chromium!

playwright执行默认运行的浏览器是chromium!

Chromium不是我们熟知的Chrome!Chromium OS是一个开源项目,主要由开发人员使用,其代码可供任何人检出、修改和构建。大家可以简单的理解二者的区别:Chromium 是开源的,Chrome 是闭源的,Chrome 特性更丰富。

我们可以通过下面的代码启动 chromium 浏览器

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

如果使用参数headless=False,那么浏览器不会启动,会以无头模式运行脚本。

加断点,我们就可以查看到启动的chromium 的版本信息,如下图:

启动chrome

如果我们需要启动chrome 浏览器,需要使用如下语句:

browser = p.chromium.launch(channel="chrome",headless=False)

启动firefox

启动firefox浏览器,代码如下:

browser = p.firefox.launch(headless=False)

启动webkit

启动webkit,代码如下:

browser = p.webkit.launch(headless=False)

备注:由于没有mac电脑,所以并未验证使用该方法能否成功启动Safari

启动edge

启动edge,需要注意一下

browser = p.chromium.launch(channel="msedge",headless=False)

参数channel

关于启动浏览器使用的 channel详解,我们可以去源码中寻找答案

C:\Python37\Lib\site-packages\playwright\sync_api\ _generated.py

class BrowserType(SyncBase): def launch中有详细的说明

channel : Union[str, None]

    Browser distribution channel.  Supported values are "chrome", "chrome-beta", "chrome-dev", "chrome-canary",

    "msedge", "msedge-beta", "msedge-dev", "msedge-canary". Read more about using

    [Google Chrome and Microsoft Edge](../browsers.md#google-chrome--microsoft-edge).

模拟iPhone浏览器

最后介绍以下模拟iphone,执行以下代码可以模拟在iPhone12中进行的web应用操作

iphone_12 = playwright.devices['iPhone 12']

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

context = browser.new_context(

    **iphone_12,

)

page=context.new_page()

page.goto("http://www.baidu.com")
责任编辑:武晓燕 来源: 今日头条
相关推荐

2020-12-10 19:32:01

ChromeEdgeFirefox

2021-01-02 09:33:57

恶意软件微软Adrozek

2020-12-14 13:50:12

微软恶意软件威胁

2021-06-05 07:51:11

ChromeSafariFirefox

2012-12-28 10:01:31

Android浏览器广告过滤

2023-05-08 11:49:05

asyncawait场景

2019-06-13 16:10:18

FirefoxChrome前端

2021-05-06 09:54:22

EdgeChrome浏览器

2023-05-11 16:47:21

playwright用法程序

2010-06-03 15:39:47

Hadoop配置

2022-03-08 14:46:33

前端Web浏览器

2010-03-06 08:55:23

Chrome插件

2010-01-14 10:01:40

FirefoxChrome

2022-01-10 09:33:59

Firefox 95Chrome 97 Linux

2012-06-15 09:13:45

FirefoxChrome

2009-03-10 08:37:19

ChromeFirefoxGoogle

2016-10-18 15:32:41

微软ChromeFirefox

2021-12-02 19:39:04

微软EdgeChrome

2009-12-21 18:32:22

关闭WCF链接

2009-03-07 18:53:46

Chrome浏览器订制
点赞
收藏

51CTO技术栈公众号