我有一个链接,我可以抓取内部文本,但我无法点击它
driver.switchTo().activeElement();
String sTemp = selenium.getText("TabBar:LogoutTabBarLink");
以上工作正常并且
sTemp = "Log Out";
selenium.click("TabBar:LogoutTabBarLink");
以上内容未能:Element is no longer valid
答案 0 :(得分:1)
你真的想使用Selenium 2(又名Web Driver),它更快更可靠。所以,除非你有充分的理由使用它,否则请忘记Selenium 1。您的代码应如下所示
WebDriver driver = new FirefoxDriver(); //or any other, like ChromeDriver or OperaDriver
WebElement element = driver.findElement(By.id("idOfYourElement");
element.click();
String text = element.getText();
答案 1 :(得分:0)
尝试使用WebDriver,并通过id或xPath获取元素(如果没有id)。
你可以为xpath编写这样的代码:
driver.switchTo().activeElement();
WebElement element = driver.findElement(By.xpath(/*Insert xpath Here */);
element.click();
您可以在Firefox中使用Firebug或在Chrome中使用Chrome的调试程序来查找元素的xpath。
如果它有一个id,你可以类似地找到id的元素(它更快,因此更可取):
WebElement element = driver.getElement(By.id(/*Insert id Here */);
有关按ID和/或xpath查找的更多有用信息,请参阅我对 this question 的回答。