SeleniumでWebサイトのGUIを操作してテストを行う際、ドロップダウンリストを選択したいシチュエーションがあります。
そんなときの方法です。
ドロップダウンリストの任意の項目を選択する
ドロップダウンリストの項目を選択するのは、Select
クラスを使えばできます。
ここでは、Amazonの「並べ替え」ドロップダウンを例に説明します。
まず、操作したいドロップダウン(selectタグ)の要素を指定してSelectクラスのインスタンスを作成。
Select dropdown = new Select(driver.findElement(By.id("sort")));
次に、selectByVisibleText
メソッドを使って、選びたい項目を指定します。
dropdown.selectByVisibleText("価格の高い順番");
これでOK.
indexやvalueでも指定できます
dropdown.selectByIndex("2");
とか
dropdown.selectByValue("date-desc-rank");
でも指定可能です。
が、特にindexはあまり使わないかもしれませんね・・・。順番が変わって違う項目を選択した際などにすぐ壊れてしまうので。