2016-08-10 4 views
-1

이미지 날짜 선택기 2를위한 코드를은 자동화해야나는 날짜 선택기

image

나는이 날짜 선택기가 나는 Watir과-Webdriver에 자동화하는 데 필요한 스크린 샷과 같이.

그들은 동일한 클래스를 가지고 있으므로 2 개의 datepicker를 선택할 수 없습니다. 내가 쓴

코드는이를 통해

("browser.img(:class => "ui-datepicker-trigger").click") 

나는 1 날짜 선택을 클릭 할 수 있어요하지만 어떻게 내가 2 날짜 선택을 선택할 수 있습니다?

답변

1

최소한 :index 로케이터를 사용하여 두 번째 날짜 선택 도구를 선택할 수 있습니다. :index 로케이터는 사용할 일치 요소의 발생을 지정합니다. 예를 들어 index: 0은 첫 번째 일치 항목을 선택합니다 (기본값).

browser.img(:class => "ui-datepicker-trigger", :index => 1).click 

:index 로케이터의 단점은 다른 유사한 요소를 추가 할 때 예기치 않게 깰 것입니다 : index: 1 두 번째 경기 등

두 번째 날짜 선택이 될 것 선택하기를 선택합니다. 예를 들어 지시 날짜 이전에 다른 날짜 선택 도구를 추가하면 위의 코드가 잘못된 날짜 선택 도구를 업데이트합니다. 더 나은 방법은 배달 마감일과 관련된 날짜 선택 도구를 찾는 것입니다. 두 번째 날짜 선택 도구를 찾고에 대한 대안이 배달 기한과 같은 li에서 날짜 선택을 찾는 것입니다이 마크 업에서

<ul> 
    <li> 
    Instruction Date: 
    <input type="text" id="instruction_date"> 
    <img class="ui-datepicker-trigger"> 
    </li> 
    <li> 
    Delivery Due Date: 
    <input type="text" id="delivery_due_date"> 
    <img class="ui-datepicker-trigger"> 
    </li> 
</ul> 

: 같은

예를 들어, HTML은 수 있습니다 들. 이 방법을 가지고가는 것은 미래의 변화에보다 강력한 될 수 있습니다 도움 @Justin 코에 대한

browser.text_field(id: 'delivery_due_date').parent.img(class: 'ui-datepicker-trigger').click 
+0

감사합니다! –