9

我尝试了为 FF48 和 selenium 3 打开木偶的新 geckodriver,但测试无法在下拉列表中选择任何元素的选项。我的测试在 FF45 和所有其他浏览器中运行良好。只有木偶驱动不选择下拉列表中的选项

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

代码运行良好,直到我开始使用带有木偶的壁虎驱动程序。

下面是我用来设置 geckodriver 和木偶的代码。

       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 ngithly 51中得到了修复。在我等待FF51发布的时候,有什么解决方法可以让它在FF48中工作吗?

4

2 回答 2

3

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

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

于 2016-08-19T20:02:19.300 回答
1

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

Selenium:Firefox 驱动程序,在 c# 中使用 SelectElement 从下拉列表中选择项目无法正常工作

于 2016-08-30T13:27:53.723 回答