playwright
文章平均质量分 76
本专栏将从零开始,一步步带你了解 Playwright 的安装、配置和基本用法;深入探讨 Playwright 的高级功能,如网络请求拦截等;通过实际项目案例,展示 Playwright 在不同场景下的实际应用。
blues_C
代码如人生,每一行都是构建未来的砖石。
展开
-
Python + Playwright(1):Page 页面操作[详细介绍]
Playwright 提供了丰富的页面操作功能,通过 page 对象可以实现对网页的导航、元素定位、交互、页面事件监测等操作。page 对象是 Playwright 中表示页面的核心对象,它允许我们控制和操作浏览器中的页面。原创 2024-04-26 11:18:27 · 12086 阅读 · 4 评论 -
Python + Playwright(2):Locator 元素定位[详细介绍]
定位器 Locator 是 Playwright 特有的概念,它是Playwright提供的一个抽象层,封装了元素的定位逻辑和操作方法, 这样就可以让我们可以直接用Locator来定位和操作页面上元素的对象。原创 2024-04-23 15:50:34 · 12291 阅读 · 3 评论 -
Python + Playwright(3):内置元素定位
page.get_by_text() # 通过文本内容定位page.get_by_title() # 通过标题属性定位元素page.get_by_placeholder() # 按占位符定位输入page.get_by_label() # 通过关联标签的文本定位表单控件page.get_by_role() # 通过显式和隐式可访问性属性进行定位page.get_by_alt_text() # 通过替代文本定位元素,通常是图像。原创 2024-04-23 12:02:50 · 5590 阅读 · 0 评论 -
Python + Playwright(4): 等待元素至指定状态
下面我将介绍playwright的三种常用的元素等待方式:wait_for(), wait_for_selector(), 和 wait_for_element_state(),以及三者之间的优劣势。原创 2024-04-19 10:43:03 · 5578 阅读 · 1 评论 -
Python + Playwright(5):Locator 元素操作[详细介绍]
在使用 Playwright 进行 Web 自动化测试或爬虫开发时,元素操作是非常重要的一部分。Playwright 提供了强大的定位器(Locator)功能,用于准确、可靠地定位页面上的各种元素,例如文本框、按钮、下拉框等。本文将深入介绍 Playwright 中 Locator 的常用方法,帮助读者更好地理解和应用这一功能。方法用于在匹配的元素上程序化地触发指定类型的事件。上述示例中,方法会在匹配的元素上触发 click 事件,就像调用 element.click() 一样。原创 2024-04-26 17:23:06 · 11108 阅读 · 4 评论 -
Python + Playwright(6):使用 set_content 方法构建和测试一个完整的表单页面
本文将介绍如何使用 Playwright 这个强大的自动化测试工具来构建和测试一个包含各种输入类型的表单页面。我们将从创建一个 HTML 页面开始,然后逐步介绍如何使用 Playwright 进行端到端测试,包括输入框、文本框、下拉框、单选框、复选框和文件上传等元素的测试。原创 2024-05-21 11:26:27 · 9360 阅读 · 0 评论 -
Python + Playwright(7):判断元素状态
因此,它提供的方法是用于查询定位器所描述的元素是否具有特定的状态,比如是否可见、是否可编辑等。这些方法是在定位器级别进行查询的,而不是在具体的元素级别。element_handle:是指一个具体的页面元素对象,通常是通过页面的选择器定位到的一个特定的元素。这些方法是直接作用在单个元素对象上的,用于查询该元素的状态,比如是否被选中、是否被禁用、是否可编辑等。针对这些需求,Playwright提供了一系列方法来进行状态查询,包括针对单个元素的查询、针对整个页面的查询以及针对元素定位器的查询。原创 2024-04-24 10:15:26 · 720 阅读 · 0 评论 -
Python + Playwright(8):元素的可操作性检查
Playwright 在执行操作之前对元素执行一系列可操作性检查,以确保这些操作表现符合预期。它会自动等待所有相关的检查通过,然后才执行请求的操作。如果在给定的超时时间内未通过所需的检查,则操作将失败并抛出 TimeoutError 异常。例如,对于 locator.click() 方法,Playwright 将确保:locator 解析为恰好一个元素。元素是可见的(Visible)。元素是稳定的(Stable),即没有动画效果或动画已完成。原创 2024-04-28 10:13:09 · 645 阅读 · 1 评论 -
Python + Playwright(9):断言方法大全
在使用 Playwright 进行自动化测试时,断言(Assertion)是验证应用程序行为是否符合预期的重要手段之一。Playwright 提供了丰富的断言方法,涵盖了元素状态、页面特征以及 API 响应的验证。本文将深入探讨这些断言方法,帮助您更有效地编写和管理测试用例。以下是对元素、页面、API断言的详细介绍。原创 2024-04-24 09:57:04 · 550 阅读 · 0 评论 -
Python + Playwright(10):切换标签页
在Web自动化测试脚本中,经常需要在多个打开的标签页之间切换。本文将详细介绍如何使用Playwright+Python进行标签页的切换操作。原创 2024-05-16 09:24:43 · 8454 阅读 · 0 评论 -
Python + Playwright(11):页面截图+添加Allure报告附件方法封装及使用
在自动化测试中,截图是一个非常重要的功能,它可以帮助我们直观地了解测试执行过程中的界面状态。Allure是一个灵活轻量的报告工具,可以与多种测试框架结合使用。Playwright是一个强大的自动化测试库,支持现代Web应用程序的跨浏览器测试。本文将介绍如何结合使用Allure和Playwright在自动化测试中进行截图,并将截图以附件的形式添加到Allure报告中。通过封装截图功能,我们可以在自动化测试中方便地进行截图,并将截图以附件的形式添加到Allure报告中。原创 2024-05-20 11:31:01 · 705 阅读 · 0 评论 -
Python + Playwright(12):基础方法二次封装简化及链式调用
Playwright 允许开发者自动化几乎所有的网页操作,包括但不限于点击、填写表单、导航等。它支持跨浏览器测试,并且能够处理单页应用(SPA)中的动态内容。通过封装 Playwright 的操作,我们能够编写出更简洁、更一致的自动化测试脚本。使用 pytest fixture 可以方便地管理测试环境的初始化和清理工作。这样,我们就能够专注于测试逻辑本身,而不是测试环境的搭建。原创 2024-06-05 10:01:10 · 821 阅读 · 0 评论 -
Python + Playwright(13): 隐藏浏览器指纹特征之注入JS
Playwright是一个跨浏览器的自动化库,它允许开发者通过`add_init_script`方法在浏览器启动时注入自定义脚本,从而实现浏览器指纹的隐藏。原创 2024-05-21 14:37:48 · 869 阅读 · 0 评论 -
Python + Playwright(14):API接口测试
API 测试涉及验证应用程序的 API(应用程序编程接口)的功能、性能和安全性。它确保 API 在数据格式、响应时间、错误处理和遵循规范方面符合预期。原创 2024-04-29 22:03:26 · 1075 阅读 · 1 评论 -
Python + Playwright(15):实现以关键字驱动测试
本文将介绍如何使用 Python + Playwright + Yaml + Pytest 实现关键字驱动测试。关键字驱动测试是一种自动化测试方法,它使用一组关键字或操作,模拟用户在应用程序中的操作进行测试,从而提高测试效率和可重复性。设计理念是:将测试执行的步骤、测试数据和预期结果都记录在YAML等文件中,然后从文件中读取相关步骤和数据来执行测试并自动进行断言。原创 2024-04-19 16:25:27 · 3858 阅读 · 1 评论 -
Python + Playwright(16):生成随机的用户代理(User-Agent)
使用 Playwright 和 fake_useragent 库抓取不同浏览器引擎的页面,并模拟随机的用户代理。原创 2024-04-25 14:24:02 · 180 阅读 · 2 评论 -
Python + Playwright(17):pytest-playwright 插件的使用
pytest-playwright 插件允许开发者通过 Pytest 命令行接口(CLI)来启动和控制 Playwright 的浏览器实例。这使得测试过程更加灵活,并且可以轻松地集成到现有的 Pytest 测试框架中。原创 2024-06-04 17:54:12 · 1035 阅读 · 0 评论 -
Python + Playwright(18):元素自愈设计思路实践
本文展示了如何使用Playwright的Locator结合pytest的自动化测试框架来实现元素的自动定位和修复。通过封装页面操作和自动修复逻辑到BasePage类中,我们可以提高测试的稳定性和可维护性。同时,使用pytest的fixture来管理浏览器的生命周期,使得测试更加简洁。通过上述方法,我们能够确保即使在面对复杂的页面元素变化时,我们的自动化测试也能够适应并成功执行,从而提高测试的覆盖率和准确性。原创 2024-04-30 13:03:20 · 2088 阅读 · 1 评论