WEB端UI自动化测试(九)执行js脚本

client-combined-3.3.1-nodeps.jar
是selenium在java环境中使用的源代码,可以直接放在工程的lib库中引用,该jar包提供了executeScript方法让我们可以执行JS脚本。
public interface JavascriptExecutor
{
    public transient abstract Object executeScript(String s, Object aobj[]);
    public transient abstract Object executeAsyncScript(String s, Object aobj[]);
}
 
使用该方法的方式如下:
(JavascriptExecutor)driver.executeScript(String,Object);
 
比如:

一、页面滚动

            //移动到窗口绝对位置坐标,如下移动到纵坐标1600像素位置 
            ((JavascriptExecutor) driver).executeScript("window.scrollTo(0, 1600)");
 
            //移动到元素element对象的“顶端”与当前窗口的“顶部”对齐 
            ((JavascriptExecutor) driver).executeScript("arguments[0].scrollIntoView();", e);  //定位到的元素的标题和浏览器顶部对齐,默认是true
//          ((JavascriptExecutor) driver).executeScript("arguments[0].scrollIntoView(flase);", e);  //false是元素下边框和视窗底部齐平

 

二、页面属性

有时候点击某个元素,会跳转到新的选项卡,导致元素定位不到,如果不想用切换Frame,可以修改前端JS属性
target="_blank",表示跳转到新的选项卡,用removeAttribute()把该属性删除,这样就在当前页面跳转了
((JavascriptExecutor) driver).executeScript("document.getElementsByName(\"ofsddzx_none_list_detail\").removeAttribute(\"target\")); 

 

 
将某个元素设置为隐藏
((JavascriptExecutor) driver).executeScript("document.getElementsById("").type="hidden"); 

 

 
 
posted @ 2019-10-17 19:50  归藏  阅读(603)  评论(0)    收藏  举报