selenium—js插件元素定位⽅法
主题:解决selenium UI⾃动测试过程中遇到弹窗元素定位不到的问题
前⾔:我们在做UI⾃动化测试的时候经常会遇到要定位的弹窗页⾯元素,直接通过xpath、css等⽅法⽆法定位到元素,或者提⽰元素⽆法操作。这是为什么呢?原因是前端同学在开发的时候通常是借助⼀些前端框架进⾏开发,这样既有效率⼜美观整洁;
笔者所在公司前端开发⽤的是vue框架涉及的语⾔包括:html、js、css;
笔者发现前端页⾯在涉及到js语⾔开发的弹窗,元素定位普通⽅法基本失败;
经过多次尝试,终于到解决⽅案;
正⽂:
先贴代码js arguments
#选择短信所属
print("选择短信所属")
from selenium.webdrivermon.action_chainsimport ActionChains
# 给元素加上红⾊边框,0.3秒后还原
def highlightElement(element):
"border:2px solid red;")
time.sleep(0.3)
"")
shelf_form = driver.find_element_by_xpath('/html/body/div[2]/div[1]/div[1]/ul/li[1]')
shelf = driver.find_element_by_xpath('/html/body/div[2]/div[1]/div[1]/ul/li[1]')
highlightElement(shelf_form)
# ⿏标先移动到⼈⼯货架框上,然后点击⼈⼯货架
ActionChains(driver).move_to_element(shelf_form).click(shelf).perform()
简要说明:
execute_script(scrip,args)
---同步执⾏JS代码
---script:被执⾏的JS代码
---args:js代码中的任意参数
主要思路是通过调⽤js 实现元素定位

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。