我无法使用牵线木偶驱动程序和selenium 3在FireFox 48的下拉列表中选择选项

时间:2016-08-18 20:03:10

标签: firefox selenium-webdriver webdriver selenium-firefoxdriver geckodriver

我试用了新的geckodriver,为FF48和selenium 3打开了牵线木偶,但测试无法在下拉列表中选择任何元素的选项。我的测试在FF45和所有其他浏览器中都能正常工作。只有牵线木偶驱动程序不会在下拉列表中选择该选项

new Select(driver.findElement(By.Id("topic"))).selectByVisibleText(item);

代码正常工作,直到我开始使用gecko驱动程序和木偶。

以下是我用来设置geionodriver和marionette的代码。

       System.setProperty("webdriver.gecko.driver",  System.getProperty("user.dir")+"\\geckodriver.exe");

        ProfilesIni profile = new ProfilesIni();

        FirefoxProfile myprofile = profile.getProfile("DefaultProfile");
        myprofile.setPreference("network.proxy.type", ProxyType.AUTODETECT.ordinal());

        DesiredCapabilities dc=DesiredCapabilities.firefox();
        dc.setCapability(FirefoxDriver.PROFILE, myprofile);
        dc.setCapability("marionette", true);
        driver =  new FirefoxDriver(dc);

当测试尝试从元素中选择一个选项时,测试不会抛出任何异常。

new Select(driver.findElement(By.Id("topic"))).selectByVisibleText(item);

在研究了这个问题之后,结果发现FF48有一个bug并且它在firefox中修复了51。 在等待FF51发布时,是否有任何解决方法使其在FF48中工作?

2 个答案:

答案 0 :(得分:3)

我很惊讶没有人遇到过这个问题。我想我可能在错误的地方发布了这个问题,因为我没有得到任何回复。 无论如何,这被证明是Firefox 48中的一个错误。它已在Firefox 51(Nightly build)中修复。

如果您使用Selenium 3 beta和Firefox 48与geckodriver,您将无法使用webdriver与任何下拉列表进行交互。这个问题已在Firefox 51中修复。

答案 1 :(得分:1)

我确实遇到了完全相同的问题,我所做的工作就是这个问题的答案。

Selenium : Firefox Driver, Selecting an item from a dropdown using SelectElement in c# not working correctly