3

カピバラでキュウリを使用して、Web アプリケーションを自動化しています。ドロップダウンから値を選択する必要がありますが、多くの場合、次のようなエラーが発生します。「引数の型が間違っています (配列が必要です) (TypeError)」

私が試した:1。

second_option_xpath = ".//*[@id='selecttype']/option[2]"  
second_option = find(:xpath, second_option_xpath).text
select(second_option, :from => 'selecttype')

2.

select "Selenium Core", :from => 'selecttype'

3.

page.find_and_select_option("selecttype", 2)

4.

select( "selecttype", {"Selenium Core" => 2})

ページのソースは次のようなものです:

<select id="selecttype"> 
<option value="Selenium IDE">Selenium IDE</option> 
<option value="Selenium Code">Selenium Core</option> 
<option value="Selenium RC">Selenium RC</option> 
<option value="Selenium Grid">Selenium Grid</option> 
</select>"

私が間違っているところを教えてください。

ありがとう

4

2 に答える 2

7

やってみました

page.select('Selenium Core', :from => 'selecttype')
于 2012-05-24T19:10:47.817 に答える
0

RobertH が提案するように、page が Capybara::Session インスタンスである page.select のようなものを使用する必要があります。

コードで select を呼び出すと、カーネル モジュールのメソッドが呼び出されます。このメソッドは、すべてのクラスが継承する基本的な Object クラスに混在しています。

このメソッドは 4 つのパラメーターを想定しており、そのうちの 3 つは IO オブジェクトの配列です。それが、間違った引数について不平を言う理由です。

于 2012-08-18T17:04:35.467 に答える