Java 使用Selenium IDE';带FirefoxWebdriver的s getEval命令
你好, 我有一个正在使用以下代码工作的Selenium IDE脚本:Java 使用Selenium IDE';带FirefoxWebdriver的s getEval命令,java,javascript,selenium,selenium-webdriver,Java,Javascript,Selenium,Selenium Webdriver,你好, 我有一个正在使用以下代码工作的Selenium IDE脚本: getEval | this.page().findElement('xpath=//html/body/div[18]/div[9]/div[2]/div/div[9]/div[2]/center/div/div/div[2]/div/span/span/a').removeAttribute('target') 然后,我将整个测试用例作为Junit测试用例导出。getEval命令未包含在导出中。我尝试了以
getEval | this.page().findElement('xpath=//html/body/div[18]/div[9]/div[2]/div/div[9]/div[2]/center/div/div/div[2]/div/span/span/a').removeAttribute('target')
然后,我将整个测试用例作为Junit测试用例导出。getEval命令未包含在导出中。我尝试了以下代码:
if (driver instanceof JavascriptExecutor) {
js = (JavascriptExecutor)driver;
}
js.executeScript("this.page().findElement('xpath=//html/body/div[18]/div[9]/div[2]/div/div[9]/div[2]/center/div/div/div[2]/div/span/span/a').removeAttribute('target');");
运行这行代码时,我得到一个异常:页面未定义
我也尝试过:
sel = new WebDriverBackedSelenium(driver, driver.getCurrentUrl());
sel.getEval("page().findElement('xpath=//html/body/div[18]/div[9]/div[2]/div/div[9]/div[2]/center/div/div/div[2]/div/span/span/a').removeAttribute('target')");
当这一行运行时,Junit测试崩溃,测试用例失败。我想知道我是否发送了正确的javascript脚本,或者是否有另一种更好的方法通过java执行Selenium命令
我正在使用java 6和Selenium 2.33.0,为什么不试试Selenium webdriver API或Selenium 2.0呢?如果您想编写更复杂的测试,这是一种更好的方法。您可以在这里看到一些示例: