多测师肖sir_高级金牌讲师ui自动化__python之实战定位常用控件链接和隐藏框(6.2)

(一)链接 ,使用click点击
通常a标签
url:https://www.baidu.com/

多测师肖sir_高级金牌讲师ui自动化__python之实战定位常用控件链接和隐藏框(6.2)_第1张图片
#链接
from selenium import webdriver
from time import sleep
dr=webdriver.Chrome()
url=“https://www.baidu.com/”
dr.get(url)
sleep(2)
dr.find_element_by_link_text(“hao123”).click()

(2)隐藏框
url:https://www.baidu.com/
多测师肖sir_高级金牌讲师ui自动化__python之实战定位常用控件链接和隐藏框(6.2)_第2张图片

在定位是只能定位到:“设置”,而搜索的 功能页面元素无法定位到

解决方法两种:
方法一:ctrl +| 方法
多测师肖sir_高级金牌讲师ui自动化__python之实战定位常用控件链接和隐藏框(6.2)_第3张图片
多测师肖sir_高级金牌讲师ui自动化__python之实战定位常用控件链接和隐藏框(6.2)_第4张图片

#隐藏框的定位场景一:
流程:打开百度点击设置=点击高级搜索
from selenium import webdriver
from time import sleep
dr=webdriver.Chrome()
url=“https://www.baidu.com/”
dr.get(url)
sleep(2)
dr.maximize_window()
sleep(2)
dr.find_element_by_id(“s-usersetting-top”).click() #点击设置
sleep(2)
dr.find_element_by_link_text(“高级搜索”).click() #点击高级搜索

方法二:actionchais 类 来模拟鼠标点击悬停

from selenium import webdriver
from time import sleep
from selenium.webdriver.common.action_chains import ActionChains
dr=webdriver.Chrome()
url=“https://www.baidu.com/”
dr.get(url)
sleep(2)
dr.maximize_window()
sleep(2)
s=dr.find_element_by_id(“s-usersetting-top”) #定位设置元素
ActionChains(dr).move_to_element(s).perform()
sleep(2)
dr.find_element_by_link_text(“高级搜索”).click()

ActionChains(dr) :括号中天当前浏览器对象
move_to_element(s) :括号填的是要悬停的具体位置
.perform () 对当前的位置进行点击悬停

场景二: 通过轩浮来定位更多
多测师肖sir_高级金牌讲师ui自动化__python之实战定位常用控件链接和隐藏框(6.2)_第5张图片
url=https://www.baidu.com/

多测师肖sir_高级金牌讲师ui自动化__python之实战定位常用控件链接和隐藏框(6.2)_第6张图片
from selenium import webdriver
from time import sleep
from selenium.webdriver.common.action_chains import ActionChains
dr=webdriver.Chrome()
url=“https://www.baidu.com/”
dr.get(url)
sleep(2)
dr.maximize_window()
sleep(2)
s=dr.find_element_by_name(“tj_briicon”) #定位设置元素
ActionChains(dr).move_to_element(s).perform()
sleep(2)
dr.find_element_by_link_text(“网盘”).click()

=========================================================

拓展知识:

ActionChains类(鼠标操作)
常用于模拟鼠标的行为,比如单击、双击、拖拽等行为
click(on_element=None) — 鼠标单击
double_click(on_element=None) — 双击
context_click(on_element=None) — 右击
click_and_hold(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) — 在某个元素位置松开鼠标左

你可能感兴趣的:(自动化测试专栏)