0

我正在使用 selenium webdriver 测试 smartgwt 应用程序。这对于具有以下内容的 smartgwt 小部件非常有效:

JavascriptExecutor executor = (JavascriptExecutor) context;

return (WebElement) executor.executeScript("return AutoTest.getElement(arguments[0]);", location);

在上述情况下,位置类似于//IButton[id=isc_button]/

但是,我们的页面上也有一些“基本”html 元素,它们不是 smartgwt 小部件,但它们确实有一个 id。因此,我尝试按以下方式执行这些操作(因为上述内容不适用于这些元素):

JavascriptExecutor executor = (JavascriptExecutor) context;
executor.executeScript("return document.getElementById(arguments[0]);", location);

但这不起作用。即使使用 firebug,我也尝试document.getElementById('xxx')了一个我知道存在给定 ID 的元素(因为我可以在 firebug 的 html 选项卡上通过检查器找到它),但这也不起作用。

有谁知道为什么,以及如何在生成的 DOM 树中通过 javascript 访问一个简单的 html 元素?

谢谢!

4

0 回答 0