UI自动化之jsjquery的应用

jsjquery的应用,有很多难以定位到的,可以通过js或者jquery来处理

目录

1、js

2、jquery

1、js

1.1js有5种定位,最后execute_script(js)来执行js

document.getElementById(“id”)

document.getElementsByName(“Name”)

document.getElementsByTagName(“tag”)

document.getElementsByClassName(“class”)

document.querySelectorAll(“css selector")

1.2浏览器滚动条的处理

js="var q=document.getElementById('id').scrollTop=0"           #滚动到顶部
js="var q=document.documentElement.scrollTop=10000"       #滚动到底部部
scrollTo(x, y)js ="window.scrollTo(100,400);"     #宽度为100,高度为400的位置

1.3js点击(使用select模块时,会点击失效)

js = 'document.getElementsByClassName("prefpanelgo")[0].click();'
driver.execute_script(js)

1.4多窗口时,在当前页面打开窗口,处理方式同readonly属性的日历框处理

跳转链接有 target="_blank" 属性,可以将此属性置空,然后再操作就不会打开新窗口
# 修改元素的 target 属性
js = 'document.getElementsByClassName("mnav")[0].target="";'
driver.execute_script(js)

  

2、jquery

其中#,代表id  //$('#user')

.,代表classname  //$('.user')

其他直接带上属性名称,//$('type=user')

 jquery就是换成$即可,selector中支持css语法,注意:目前很多H5的页面,前端开发的框架如果使用的是vue,用$就不行

jquery='$(‘#qq’).click()' #$(selector).action()  
driver.excute_script(jquery)

 我们可以在浏览器中调试,所写的jquery是否唯一定位到一个元素

原文地址:https://www.cnblogs.com/weizhideweilai/p/9642596.html