美文网首页
selenium—js插件元素定位方法

selenium—js插件元素定位方法

作者: 武龙雨 | 来源:发表于2019-12-12 18:22 被阅读0次

主题:解决selenium UI自动测试过程中遇到弹窗元素定位不到的问题

前言:我们在做UI自动化测试的时候经常会遇到要定位的弹窗页面元素,直接通过xpath、css等方法无法定位到元素,或者提示元素无法操作。

这是为什么呢?原因是前端同学在开发的时候通常是借助一些前端框架进行开发,这样既有效率又美观整洁;

笔者所在公司前端开发用的是vue框架涉及的语言包括:html、js、css;

笔者发现前端页面在涉及到js语言开发的弹窗,元素定位普通方法基本失败;

经过多次尝试,终于找到解决方案;

正文:

先贴代码

#选择短信所属

print("选择短信所属")

from selenium.webdriver.common.action_chainsimport ActionChains

# 给元素加上红色边框,0.3秒后还原

def highlightElement(element):

driver.execute_script("arguments[0].setAttribute('style',arguments[1]);", element,

                          "border:2px solid red;")

time.sleep(0.3)

driver.execute_script("arguments[0].setAttribute('style',arguments[1]);", element,

                          "")

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 实现元素定位

相关文章

网友评论

      本文标题:selenium—js插件元素定位方法

      本文链接:https://www.haomeiwen.com/subject/nrbtnctx.html