24新一代自动化测试神器playwright+python系列课程_playwright模拟鼠标操作_拖拽2

playwright模拟鼠标操作_拖拽2

现在很多网站登录时都有滑块拖动验证功能,在写自动化测试脚本时就需要在脚本中实现拖动滑块的过程,playwright提供了多种实现元素的拖拽和释放的方法,我们先看第二种。

将元素拖拽到另一个元素所在的位置。

按住元素从页面的一个位置拖动到另外一个位置,有2种方式可以实现:

locator.drag_to(target: locator) 先定位元素,调用drag_to方法到目标元素

page.drag_and_drop(source: str, target: str) page对象直接调用

我们以下图网页中的两个元素为例看一下上个方法的使用

page.drag_and_drop(source: str, target: str)

实践代码:

# '''

# author: 测试-老姜   交流微信/QQ:349940839

# 欢迎添加微信或QQ,加入学习群共同学习交流。

# QQ交流群号:877498247

# 西安的朋友欢迎当面交流。

# '''

from playwright.sync_api import Playwright, sync_playwright, expect

playwright = sync_playwright().start()

browser = playwright.chromium.launch(headless=False, args=['--start-maximized']) #默认无头模式,设置浏览器最大化

context = browser.new_context(no_viewport=True) # 创建上下文,相当浏览器于实例化,即打开浏览器

page = context.new_page() # 打开一个新标签页

page.goto("https://jqueryui.com/resources/demos/droppable/default.html") # 打开网址

page.wait_for_timeout(5000)

page.drag_and_drop('#draggable','#droppable') # 拖拽元素

page.wait_for_timeout(10000)

context.close()

browser.close()

playwright.stop()

locator.drag_to(target: locator)

实践代码:

# '''

# author: 测试-老姜   交流微信/QQ:349940839

# 欢迎添加微信或QQ,加入学习群共同学习交流。

# QQ交流群号:877498247

# 西安的朋友欢迎当面交流。

# '''

from playwright.sync_api import Playwright, sync_playwright, expect

playwright = sync_playwright().start()

browser = playwright.chromium.launch(headless=False, args=['--start-maximized']) #默认无头模式,设置浏览器最大化

context = browser.new_context(no_viewport=True) # 创建上下文,相当浏览器于实例化,即打开浏览器

page = context.new_page() # 打开一个新标签页

page.goto("https://jqueryui.com/resources/demos/droppable/default.html") # 打开网址

page.wait_for_timeout(5000)

# page.drag_and_drop('#draggable','#droppable')

page.locator('#draggable').drag_to(page.locator('#droppable')) #拖拽元素

page.wait_for_timeout(10000)

context.close()

browser.close()

playwright.stop()

posted @ 2024-03-21 11:01  测试_老姜  阅读(19)  评论(0)    收藏  举报