问题(一) DebugAugmenter

时间:2023-03-10 07:26:57
问题(一) DebugAugmenter

问题: DebugAugmenter的作用是什么?是任何一个自创建的变量都可以取代它还是它有特定含义?

 public class DebugAugmenter Test
{
@Test
public void testHighlight()
{
WebBrowser browser = BrowserEmulator.getBrowser();
browser.open("https://www.baidu.com"); DebugAugmenter debug = new DebugAugmenter();
debug.register(browser.getWebDriver()); WebElement element = browser.getElement("//*@id=\"kw\"]");
debug.highlightElement(element); browser.pause(1);
browser.quit();
}
}

注: 上述代码是基于特定封装包

解答:

DebugAugmenter是封装的类名,

 public class DebugAugmenter extends BrowserAugmenter
{
private static final String JS_HIGHLIGHT = "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);"; public void highlightElement(WebElement element)
{
JavascriptExecutor js = (JavascriptExecutor) browser;
js.executeScript(JS_HIGHLIGHT, element);
}
}