2013-11-15 8 views
0

제가 다루는 문제는 제 무식함으로 해결할 수 없습니다. 각기 다른 교육 요구 사항을 가진 브라우저에 4 개의 라디오 버튼이있는 페이지가 있습니다. 나는 각 교육 요구 사항에 대해 특정 라디오 버튼을 선택할 수 있기를 원합니다.Watir. 여러 개의 라디오 버튼 옵션을 선택하십시오

내가 가진 코드는 다음과 같다 :

radios = browser.radios 
radios.each do |radio| 
    radio.input(:value => "very").set 
end 

그러나 나에게 말하는 오류 메시지가 제공이 유지 : "정의되지 않은 #Watir : 입력에 대한 '설정'방법 0x103a5d508"

내가 한을 내가 일 2 옵션에 페이지의 모든 select_lists의 옵션을 변경 select_lists에 대한 비슷한 :

lists = browser.select_lists 
lists.each do |list| 
    list.option(:index, 1).select 
end 

을 내 코드에 해당하는 라디오 버튼에 내가 radio.o를 사용하여 시도 "NoMethodError : 정의되지 않은 메서드`#Watir :: 옵션에 대한 '설정 : 0x103a466a0"ption하지만 나에게 유사한 오류 준

답변

2

문제를

코드

radios = browser.radios 
radios.each do |radio| 
    radio.input(:value => "very").set 
end 

는 각각 것을 말한다 라디오 버튼을 사용하여 첫 번째 입력 요소를 "very"값으로 설정하십시오. 이는 다음과 같이 html을 찾고 있음을 나타냅니다.

<radio> 
    <input value="very" /> 
</radio> 

이것은 아마도 HTML과 유사하지 않습니다.

솔루션 난 당신이 정말 설정할 HTML을 가정

같은 수 있습니다 :

<input type="radio" value="very" /> 

가 "매우"값으로 각 라디오 버튼을 설정하려면 코드가 있어야한다 :

# Get a collection of all radios with value "very" 
radios = browser.radios(:value => "very") 

# Iterate through each radio button in the collection and set it 
radios.each do |radio| 
    radio.set 
end 

간단히 짧을 수 있습니다.

browser.radios(:value => "very").each(&:set) 
관련 문제