相关疑难解决方法(0)

在Selenium2中是否有针对FirefoxDriver的经过验证的mouseOver解决方法?

我正在使用Selenium Java 2.0b3.我有这个代码:

...
WebDriver driver = new InternetExplorerDriver();
Selenium seleniumDriver = new WebDriverBackedSelenium(driver, "http://localhost:8088/Sistema/");
...
...
RenderedWebElement menuRegistrar = (RenderedWebElement)driver.findElement(By.xpath("//a[normalize-space()='Registrar']"));
seleniumDriver.mouseOver("//a[normalize-space()='Registrar']"); //makes element visible     
menuRegistrar.click();
seleniumDriver.mouseOut("//a[normalize-space()='Registrar']");
...
Run Code Online (Sandbox Code Playgroud)

与InternetExplorerDriver(使用IE 8)的魅力相似,但它不适用于FirefoxDriver(使用Firefox 4).我用代码尝试了很多东西,没有任何作用.我必须使用FirefoxDriver,因为我正在测试的应用程序与IE的表现不佳.

正如您可能猜到的那样,"注册器"链接将被隐藏,直到mouseOver事件触发.

任何经证实的解决方法?谢谢你的时间...

编辑:还试用ChromeDriver与Chrome 11.也没用.如果有适用于Chrome的解决方法,我会接受它!


答案(Selenium Java 2.0RC1,Windows 7,Firefox 4的工作代码):感谢Andy Tinkham和Luke Inman-Semerau:

//get the element that shows menu with the mouseOver event
WebElement menu = driver.findElement(By.xpath("//div[@id='nav']/li[3]"));

//the element that I want to click (hidden)
WebElement menuOption = driver.findElement(By.xpath("//a[normalize-space()='Registrar']"));

//build and …
Run Code Online (Sandbox Code Playgroud)

java webdriver selenium-webdriver

19
推荐指数
1
解决办法
3万
查看次数

标签 统计

java ×1

selenium-webdriver ×1

webdriver ×1