news 2026/6/24 10:11:27

快速入门Playwright框架:从零到自动化测试的第一步

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
快速入门Playwright框架:从零到自动化测试的第一步

01背景介绍

Playwright 是微软开发的 Web应用的自动化测试框架 。selenium相对于Playwright慢很多,因为Playwright是异步实现的,但是selenium是同步的,就是后一个操作必须等待前一个操作。

selenium是由相应的厂商提供相应的驱动,python+驱动执行相当自动化操作,缺点是如果你得浏览器驱动和你得浏览器版本不对应,你得selenium就会报错,而且你需要时刻关注版本得问题。

Playwright 是基于 Node.js 语言开发的,而且不需要再重新下载一个浏览器驱动,相当于已经写好了,仅仅需要安装这个库即可。

所以,这个不会自动更新,因为我们使用固定的。

02常用属性

对象属性

  • p = sync_playwright()创建一个playwright 进程

  • browser = p.chromium.launch(headless=False)创建一个浏览器对象,headless 表示无头

  • page = browser.new_page()创建一个页面对象

动作连

  • page.goto()前往某个网站

  • page.title()获取标题

  • page.locator(‘css选择器’)定位

  • page.fill(‘keyword’)# 输入某些值

  • page.click()# 点击

等待时间

  • page.wait_for_timeout(1000), 单位是毫秒,因为Playwright 框架是异步的,time.sleep() 在 Playwright 中式不推荐使用的,因为time.sleep() 可能破坏Playwright的相关处理逻辑。

03demo实战

改进:

但是上面的写法非常荣誉,既要创建进行,又要创建各种对象,不利于开发和维护,可以使用with as会话管理从而自动管理进程,不需要手动调用start()stop()

代码助手:

输入下面的指令后,会自动弹出两个框框,我们只需要点击点击,右侧就会生成代码,这样我们的工作量会大大减小。

右侧是代码,但是不能获取元素,只能模拟动作连等等。

跟踪:

playwright同时提供了跟踪功能,就是把playwright 的轨迹信息从头到尾到 保存下来,包括 路径 截图等待。

04总结

在本文中,我们详细介绍了Playwright框架,并与Selenium进行了比较。我们了解了安装配置流程,并通过实战项目展示了其强大的功能和灵活性。我们还探讨了常用属性、代码助手和跟踪功能,为读者提供了全面的指南。

通过比较Playwright和Selenium,我们可以看到Playwright在自动化测试领域的优势。其跨浏览器和跨平台的特性,以及对现代Web技术的全面支持,使其成为开发人员和测试人员的首选。无论是构建复杂的测试脚本还是进行简单的页面交互,Playwright都能提供强大而可靠的解决方案。

感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 11:48:33

Unity中多个脚本的Awake、Start执行顺序是如何排序的?

第一章:Unity中脚本生命周期函数的执行顺序解析 在Unity引擎中,脚本的生命周期函数定义了代码在特定时刻自动调用的顺序。理解这些函数的执行流程对于控制游戏对象的行为、资源加载与状态管理至关重要。 常见生命周期函数及其调用顺序 Unity脚本从创建到…

作者头像 李华
网站建设 2026/6/24 7:59:15

为什么你的Laravel 12路由总是404:深入底层机制的6个排查步骤

第一章:Laravel 12路由机制的核心原理 Laravel 12 的路由系统建立在高度优化的编译式路由注册与匹配引擎之上,摒弃了传统正则逐条匹配的低效方式,转而采用基于 HTTP 方法与 URI 模式的预编译路由表(Compiled Route Collection&…

作者头像 李华
网站建设 2026/6/15 11:05:17

Speech Seaco Paraformer省钱部署方案:按需GPU计费降低50%成本

Speech Seaco Paraformer省钱部署方案:按需GPU计费降低50%成本 1. 背景与痛点:语音识别落地为何总卡在成本上? 你是不是也遇到过这种情况:好不容易跑通了一个高精度的中文语音识别模型,结果一算账,每月GP…

作者头像 李华
网站建设 2026/6/23 3:45:09

Open-AutoGLM文档解读:核心模块与API接口使用指南

Open-AutoGLM文档解读:核心模块与API接口使用指南 1. 框架定位与能力全景 Open-AutoGLM 是智谱开源的轻量化手机端 AI Agent 框架,它不是传统意义上的大模型推理工具,而是一个真正能“看见”“理解”“动手”的多模态智能体系统。它的核心价…

作者头像 李华
网站建设 2026/6/22 12:14:34

MySQL错误1045排查全攻略(从用户权限到防火墙配置一网打尽)

第一章:PHP连接MySQL报错1045问题概述当使用PHP连接MySQL数据库时,开发人员常遇到错误代码1045,其完整提示通常为:Access denied for user usernamelocalhost (using password: YES)。该错误表明MySQL服务器拒绝了客户端的登录请求…

作者头像 李华
网站建设 2026/6/22 12:14:19

【工业级图像处理必备技能】:基于C++ OpenCV的多尺度模糊融合技术揭秘

第一章:多尺度模糊融合技术概述与工业应用场景 多尺度模糊融合技术是一种结合多分辨率分析与模糊逻辑推理的数据融合方法,广泛应用于复杂环境下的信号处理、图像增强和智能决策系统。该技术通过在不同尺度上提取输入数据的特征,并利用模糊规则…

作者头像 李华