0
フォームの中に複数のselect2オプションがあるテストケースのシナリオで作業しています。私はselect2のボックスに値を私のサーバーから来て(AJAX要求)を記入しようとしています。 セレンレコーダーを使ってみました。それは良い助けではありません。それはselect2の働きを理解していません。セレンIDEの助けを借りてselect2からオプションを選択する方法
私は自分のコマンドを以下に載せています。次のと同じように
@driver.get(@base_url + "/app/customers")
@driver.find_element(:link, "Add Customer").click
@driver.find_element(:name, "customer[name]").click
@driver.find_element(:name, "customer[name]").clear
@driver.find_element(:name, "customer[name]").send_keys "Chinmay"
Selenium::WebDriver::Support::Select.new(@driver.find_element(:xpath, "//*[@id=\"page-content\"]/div/div/div/div/form/div[4]/div[1]/div[4]/select")).select_by(:text, "label=Primary")
そして、最後の行は次のようなエラーに
[error] Option with label 'Primary' not found
私のHTMLコードを投げているがあるコードのためのセレンIDEを使用するのは良い考えではありません
<select class="form-control amura-select2 select2-hidden-accessible" data-type="ds" data-name="address_types" data-default="only" style="width:100%;" required="required" name="customer[address_attributes][address_type]" aria-required="true" tabindex="-1" aria-hidden="true">
<option value="primary">Primary</option>
</select>
のように私はセレンのIDEを使用しての長所と短所を知っている何かを試してみてください。私はまた、Capybaraを使用して解決策を持っています。しかし、私はこれをやりたいユースケースがもう1つあります。あなたはこのコードに関して何か助けになっていますか? –
明確にするために:セレンのwebdriverのコードは上に提供されています。セレンのIDEバージョンが必要ですか? – Antesser
私は別の解決策を見つけました。あなたのソリューションでさえも効果があります。 runScriptコマンドを使用して、select2スクリプトをいくつか実行しました。そして、私が望むように働いています。 –