[自动化测试:实践01]:2:(4-1 )元素定位(selenium)在实际场景中的应用2
文章目录
零:实验要求
0 课程实践1-Katalon Recorder和元素定位
0 课程实践1-Katalon Recorder和元素定位
▶ 0 课程实践1-Katalon Recorder和元素定位
实践任务
1 KR数据驱动的自动测试案例1
2 KR数据驱动的自动测试案例2
3-1 元素定位在实际场景中的应用1
3-2 元素定位在实际场景中的应用1-参考代码 (学生端看操作视频和回放)
4-1 元素定位在实际场景中的应用2
4-2 元素定位在实际场景中的应用2-参考代码(学生端看操作视频和回放)
提交2份作业
提交作业1:实践任务1和2中任选一个。
提交作业2:实践任务3和4中任选一个。
▶ 0 课程实践1-Katalon Recorder和元素定位
一. KR数据驱动的自动测试案例2
0:实践目的:熟悉元素定位的基本用法。
实践目的
熟悉元素定位的基本用法。
结合ActionChains实现网页上的鼠标自动操作测试。
1:Selenium实验环境构建
实验环境构建
参考第一讲讲义和自动化测试开发实验环境配置指南.MP4视频
打开Pycharm,新建python文件training1-4.py编程实现如下功能。
打开测试网页:http://www.runoob.com/try/try.php?filename=jqueryui-api-droppable。
定位到需要拖拽物体的Frame:iframeResult。
使用元素定位拖拽源和拖拽源目标。
构建ActionChains实现拖拽动作。
2:具体代码实现
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.action_chains import ActionChains
browser = webdriver.Firefox()
url = "http://www.runoob.com/try/try.php?filename=jqueryui-api-droppable"
browser.get(url)
browser.switch_to.frame('iframeResult')
source = browser.find_element(By.CSS_SELECTOR, '#draggble')
target = browser.find_element(By.CSS_SELECTOR, '#droppable')
actions = ActionChains(browser)
actions.drag_and_drop(source, target)
actions.perform()
二:补充知识:ActionChains简单介绍及使用
目的
ActionChains:执行PC端的鼠标点击、双击、右键、拖拽等事件
执行原理
调用ActionChains的方法时,不会立即执行,而是将所有的操作,按顺序存放在一个队列里,当你调用perform()方法时,队列中的事件会依次执行
基本用法
生成一个动作 action = ActionChains(driver)
动作添加方法1 :action.方法1
动作添加方法2 :action.方法2
调用perform()方法执行:(action.perform())
具体写法
链式写法:ActionChains(driver).move_to_element(element).click(element).perform()
分布写法:
action = ActionChains(driver)
action.move_to_element(element)
action.click(element)
action.perform()
ActionChains方法列表
click(on_element=None) ——单击鼠标左键
click_and_hold(on_element=None) ——点击鼠标左键,不松开
context_click(on_element=None) ——点击鼠标右键
double_click(on_element=None) ——双击鼠标左键
drag_and_drop(source, target) ——拖拽到某个元素然后松开
drag_and_drop_by_offset(source, xoffset, yoffset) ——拖拽到某个坐标然后松开
key_down(value, element=None) ——按下某个键盘上的键
key_up(value, element=None) ——松开某个键
move_by_offset(xoffset, yoffset) ——鼠标从当前位置移动到某个坐标
move_to_element(to_element) ——鼠标移动到某个元素
move_to_element_with_offset(to_element, xoffset, yoffset) ——移动到距某个元素(左上角坐标)多少距离的位置
perform() ——执行链中的所有动作
release(on_element=None) ——在某个元素位置松开鼠标左键
send_keys(*keys_to_send) ——发送某个键到当前焦点的元素
send_keys_to_element(element, *keys_to_send) ——发送某个键到指定元素
原文地址:https://blog.csdn.net/Abraxs/article/details/142760140
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!