PlayWright-简介

788 阅读3分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第1天,点击查看活动详情

#摘要

当自己代码的编写水平达到瓶颈,我们应该如何继续提高我们的代码质量呢?代码测试,单元测试、集成测试、e2e测试。这些测试有利的保证了我们的代码的稳定性。对于单元测试,目前比较流程的就是JEST了。对于e2e测试大多数人肯定会想到puppeteer,但是今天我打算学习一下PlayWright。下面我们来进行学习。

文档是英文文档,我会逐个翻译。
说明:本人是前端开发者,因此这里会基于node的文档进行描述。大家需要Java、paython等可以去官方查找

image.png

#简介

Playwright enables reliable end-to-end testing for modern web apps.

palyWright为网络应用程序提供可靠的端对端的测试服务。

image.png 上面是官网的描述,我们再看看她的背景。

Playwright是由微软公司2020年初发布的新一代自动化测试工具,相较于目前最常用的Selenium,它仅用一个API即可自动执行Chromium、Firefox、WebKit等主流浏览器自动化操作。puppeteer,是它的前辈。puppeteer,的全套api都可以在PlayWright中进行使用。同时还拓展了很多额外的API以便于我们使用。

支持任何浏览器、任何平台、只需要一套API

image.png

  • Playwright支持目前所有主流浏览器,当然可以看到IE是新版的IE,所以对于老版的IE不推荐使用。
  • 可以在任何平台使用:Java、python、node、.net等。当然目前文档是有这四个。

Playwright拥有适用于所有现代浏览器的完整API覆盖,包括Google Chrome和Microsoft Edge(带有Chromium),Apple Safari(带有WebKit)和Mozilla Firefox。

优势:任何平台、任何浏览器运行e2e测试只需要一套API

# 快速可靠的执行 + 没有限制

  • 兼容任何元素选择器(id、类选择器、属性选择器、高级选择器等):可以直接获取DOM元素,并进行直接操着。
  • 自动化等待API:有丰富的等待执行API来满足页面出现的各种状况。
  • 支持丰富的选择表达式
  • 方便导入导出 Cookies
  • 支持丰富的选择表达式
  • 强大的网络控制
  • 测试截屏|PDF导出等
  • 全套的解决方案-快速执行

等等一些列的优势,目前就不做更多的说明了。我们再来看看她的局限性。

局限性

  • (1) Playwright不支持旧版Microsoft Edge或IE11。支持新的Microsoft Edge(在Chromium上);所以对浏览器版本有硬性要求的项目不适用。

  • (2) 需要SSL证书进行访问的网站可能无法录制,该过程需要单独定位编写。

  • (3) 移动端测试是通过桌面浏览器来模拟移动设备(相当于自带模拟器),无法控制真机。

总结

综上所属这就是Playwright的概述了,如何想要自己深入的去了解。可以先看看首页下面的介绍,这是人家官方总结的。大概和我说的差不多。当然我之间很少做测试因此,不太明白测试的痛点在哪里。应该就是者上面说的优势吧。

image.png 后面我会一步一步的进行深入的学习。当然这个是微软研发的,建议大家学习一下。