我喜欢Playwright! 这是微软开源的一款非常强大的自动化工具,再过几年,他很有可能取代Selenium在浏览器自动化的通知地位。使用过一段时间,我没有找到很好的中文资料可以参考,导致很多问题无法得到及时解决,因此我决定自己记录一下使用的笔记,算是给社区回馈。

开始

这次我想整理一下如何快速搭建Playwright的执行环境,其中有一些坑,我也会记录,以后重新搭环境的时候照着操作就可以了。

Playwright 目前支持的编程语言有 JavaScript、Python、Java、.NET,本教程使用 Python 语言演示。要在 Python 语言当中使用 Playwright,需要执行两个步骤。第一步,安装python的执行环境。第二步,安装 Playwright。

安装

安装python只需要从官方网站下载安装包,点击安装就可以完成。首先我们打开python的官方网站,然后点击 download 下载安装包。不同的操作系统会推荐不同的安装包。下载完成后点击安装文件完成安装。



安装 Playwright

Playwright 的 Python语言安装包几乎包含了所有需要用到的组件,安装 playwright 工具唯一需要做的事情就是打开命令行工具,输入安装指令:

	  pip install playwright
playwright install

pip install playwright 安装语言包工具,除此之外,playwright 需要依赖浏览器环境才能运行,playwright install 的意思是下载和安装依赖的浏览器。浏览器不需要提前安装,通过这行命令,程序会自动下载一个 chrioum 浏览器和一个 firefox 浏览器,之后的浏览器操作都会在这些浏览器上运行。耐心等待浏览器下载完成后,就完成了安装,以后每次运行不会再重复下载。

如果觉得等待时间太长,也可以选择单独安装 chromium 浏览器或者 firefox 浏览器,目前支持的浏览器有chromium, chrome, chrome-beta, msedge, msedge-beta, msedge-dev, firefox, webkit。

	  playwright install chromium
# or
playwright install firefox

所有关于 playwright 的命令行参数,你都可以通过 help 指令查看:

	  $ playwright --help

	  Usage: npx playwright [options] [command]

	  Options:
-V, --version output the version number
-h, --help display help for command Commands:
open [options] [url] open page in browser specified via -b, --browser
codegen [options] [url] open page and generate code for user actions
install [options] [browser...] ensure browsers necessary for this version of Playwright are installed
install-deps [browser...] install dependencies necessary to run browsers (will ask for sudo permissions)
cr [options] [url] open page in Chromium
ff [options] [url] open page in Firefox
wk [options] [url] open page in WebKit
screenshot [options] <url> <filename> capture a page screenshot
pdf [options] <url> <filename> save page as pdf
show-trace [options] [trace] Show trace viewer
help [command] display help for command

运行

当安装好 Playwright 以及浏览器之后,我们可以通过下面的代码来简单运行。这个程序会打开一个浏览器,并且访问一个网址,然后你就可以在浏览器上执行操作了。你做的每步操作,都会被 playwright 录制下来,生成运行代码,显示在一个 Inspector 的界面中,这些代码可以拷贝下来,保存到代码库当中。

	  playwright codegen http://www.baidu.com

【web自动化测试】Playwright快速入门,5分钟上手的更多相关文章

  1. 使用ASP.NET 构建 Web 应用程序快速入门-8小时的免费培训视频

    - Scott Hanselman的中文博客[转载] [原文发表地址] Building Web Apps with ASP.NET Jump Start - 8 Hours of FREE Trai ...

  2. 自动化测试---PageObjects快速入门(一)

    PageObject快速入门 介绍: Page Object是selenium的一种设计模式, 是在web自动化测试中将一个页面设备成一个class或基础库来实际的方法这种模式的好处有以下几点:1.让 ...

  3. GeoServer基础教程(二):GeoServer的Web管理界面快速入门

    转载:http://blog.163.com/daimiao_study/blog/static/248923117201542522742373/ GeoServer的控制和管理是基于网页形式,所有 ...

  4. Spring Boot2 快速入门教程-到上手

    Spring Boot2 教程合集 入门 纯 Java 代码搭建 SSM 环境 创建一个 Spring Boot 项目的三种方法 理解 Spring Boot 项目中的 parent 基础配置 配置文 ...

  5. web前端html快速入门

    HTML 学前端之间不得不知道一个网站:http://www.w3school.com.cn/ 网上有很多教程关于前端的,写的特别详细,也写的特别好.我们应该要自已理解,一些相应的前端的知识,不能只是 ...

  6. 1 flume快速入门——十分钟学会flume

    flume ## 1.1 Flume定义 Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集.聚合和传输的系统.Flume基于流式架构,灵活简单. 大数据框架大致分为3类: ...

  7. pthon web框架flask(二)--快速入门

    快速入门 迫切希望上手?本文提供了一个很好的 Flask 介绍.假设你已经安装 Flask, 如果还没有安装话,请浏览下 安装 . 一个最小的应用 一个最小的应用看起来像这样: from flask ...

  8. 前端学习 node 快速入门 系列 —— 报名系统 - [express]

    其他章节请看: 前端学习 node 快速入门 系列 报名系统 - [express] 最简单的报名系统: 只有两个页面 人员信息列表页:展示已报名的人员信息列表.里面有一个报名按钮,点击按钮则会跳转到 ...

  9. Python Web自动化测试入门与实战,从入门到入行

    Python Web自动化测试入门与实战 购买地址 · 京东:https://item.jd.com/69239480564.html   天猫:https://detail.tmall.com/it ...

随机推荐

  1. Random方法中的nextInt(int arg0)方法讲解

    nextInt方法会生成一个随机的在5以内的数,负载均衡随机策略底层用的就是这个方法: Random rand = new Random(); int index = rand.nextInt(5); ...

  2. Java_选择结构

    if单选择结构 if(布拉尔表达式){ //如果布拉尔表达式为true将执行的语句 } if双选择结构 if(布拉尔表达式){ //如果布拉尔表达式的值为true }else{ //如果布拉尔表达式的 ...

  3. 抽象类与接口——JavaSE基础

    抽象类与接口 抽象类 抽象类既包含规范又包含具体实现 抽象类可以包含实现的方法 和 未实现的用abstract修饰的抽象方法 抽象类不可以有实例化(不能使用new实例化),只能通过子类继承,然后对子类 ...

  4. 隐式转换导致的cpu负载近100%

    1.背景:从昨天晚上通过钉钉和邮箱一直接收到频繁报cpu负载超过90%,刚好BI同事晚上.凌晨在线上配合审计频繁DML数据库(备注:BI有一个同事有个库的DML权限,后面等审计完会收回)加上我线上线下 ...

  5. 阻碍NB-IoT技术在智能水表发展的4个原因分析

    与以往的机械水表不同,根据设备所搭载的模块,智能水表分为IC卡智能表.光电直读智能表以及无线远传智能表.随着物联网技术和工业的发展,无线远程传输智能水表开始被水务公司广泛使用. 以往的机械水表.指针式 ...

  6. [WUSTCTF2020]颜值成绩查询-1

    分享下自己在完成[WUSTCTF2020]颜值成绩查询-1关卡的手工过程和自动化脚本. 1.通过payload:1,payload:1 ,payload:1 or 1=1--+,进行判断是否存在注入, ...

  7. 使用http://start.spring.io/构建maven微服务项目的几个坑及eclipse构建spring boot微服务项目

    一,使用http://start.spring.io/构建maven微服务项目 本来嘛,直接构建的项目导入时没有任何问题的导入就可以运行,可是最近构建好项目,然后导入,种种报错 1.导入之后POM报错 ...

  8. 重学ES系列之Set实现数组去重、交集、并集、差集

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. python+anaconda+pycharm的使用

    研一开学的时候开始接触了这些,但是对于其各种功能感到十分混乱,现在通过这篇博文将其功能详细的写出来. 1.python解释器 首先要了解python解释器,我们俗称的下载python也就是下载pyth ...

  10. word processing in nlp with tensorflow

    Preprocessing Tokenizer source code:https://github.com/keras-team/keras-preprocessing/blob/master/ke ...