3

新しいバージョンの Selenium と必要な geckodriver を使用するようにいくつかの機能テスト コードをアップグレードしたところ、以前は HTML 選択コントロールでオプションを選択していたコードが機能しなくなりました。簡単なページで問題を再現できます。

関連するコードは次のとおりです。

1. my_select = Select(driver.find_element_by_id("foo_select"))
2. my_select.select_by_value("3")

および関連する HTML

<form>
    <select id="foo_select" name="foo_select">
        <option selected="selected" value="1">Ford</option>
        <option value="2">Hyundai</option>
        <option value="3">Jeep</option>
        <option value="4">Kia</option>
        <option value="5">Nissan</option>
        <option value="6">Toyota</option>
    </select>
</form>

上記の 1 の後に my_select の値を確認できますが、実際には「foo_select」という名前の選択を参照しています。しかし、2行目は値「3」のオプションを選択していないようです(何も選択していません。他の「select_by ..」バリエーションも試しました)。実際、my_select.first_selected_option (2 以降) を見ると、まだ最初のオプションである「フォード」を参照しています。

4

1 に答える 1

0

Firefox 49 を使用すると問題はなくなります。私は 48 を使用していました。

于 2016-10-24T15:23:25.830 に答える