9

FF48 と Selenium 3 でマリオネットをオンにして新しい geckodriver を試してみましたが、テストでどの要素のドロップダウン リストのオプションも選択できません。私のテストは、FF45 および他のすべてのブラウザーで正常に動作します。マリオネット ドライバーのみ、ドロップ ダウン リストのオプションを選択しません。

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

マリオネットで gecko ドライバーを使い始めるまで、コードは正常に動作します。

以下は、マリオネットで 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 にはバグがあり、firefox ngithly 51 で修正されていることが判明しました。FF51 のリリースを待つ間に FF48 で動作させるための回避策はありますか?

4

2 に答える 2

3

誰もこの問題を経験していないことに驚いています。回答が得られなかったので、間違った場所に質問を投稿した可能性があります。とにかく、これは Firefox 48 のバグであることが判明しました。これは Firefox 51 (Nightly ビルド) で修正されています。

Selenium 3 ベータ版と Firefox 48 を geckodriver で使用している場合、webdriver を使用してドロップダウン リストを操作することはできません。この問題は Firefox 51 で修正されました。

于 2016-08-19T20:02:19.300 に答える