【Selenium专题】高亮显示页面元素

高亮显示页面元素主要用到Selenium中使用js的知识点,最常用的是检查元素定位是否正确。此外,实现js的调用大大增强了Selenium的功能。以下是调试通过的案例:

import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;

public class js {
    public static void main(String[] args){
         WebDriver driver = new ChromeDriver();
         driver.get("http://www.baidu.com");
         String js="var q=document.getElementById(\"kw\");q.style.border=\"1px solid red\";";//对象显示红色边框
        ((JavascriptExecutor)driver).executeScript(js);
    }
}    

运行结果是百度搜索栏显示红色边框,如下图示:

 

以下是同事封装的一份方法,可以直接调用。分享一下: 

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.JavascriptExecutor;

/**
* 高亮显示页面元素
* @param diver 浏览器驱动
* @param element 高亮显示对象元素
*/    
public static void highlight(WebDriver diver, WebElement element) {
        JavascriptExecutor js = (JavascriptExecutor) diver;
        js.executeScript("element = arguments[0];" +
        "original_style = element.getAttribute('style');" +
        "element.setAttribute('style', original_style + \";" +
        "background: yellow; border: 2px solid red;\");" +
        "setTimeout(function(){element.setAttribute('style', original_style);}, 1000);", element);
        }

 

posted @ 2014-08-21 17:21  钟灵.毓秀  阅读(2680)  评论(0编辑  收藏  举报