2013-08-05 1 views
0

은 내가위한 로케이터 작성해야 페이지에 버튼이 - 그래서 여기에 몇 가지 도움을 주셔서 감사합니다 것입니다 지금까지 실패되었습니다를 :셀레늄 IE 드라이버 찾기 - 까다로운 요소 XPath는 또는 CSS

<div class="border" style="border-radius: 10px 10px 10px 10px;"> 
<div> 
<span id="btnAddClient" class="buttons"> 
<div id="clientContainer"> 
<div id="ClientAccordian_204" class="accordion ui-accordion ui-widget ui-helper-reset ui-accordion-icons" role="tablist"> 
<h3 id="H3Client_204" class="ui-accordion-header ui-helper-reset ui-state-active ui-corner-top" role="tab" aria-expanded="true" tabindex="0"> 
<div class="ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content-active" role="tabpanel" style=""> 
<span id="btnAddYear" class="buttons"> 
<button onclick="javascript:ShowHideAddYear(204,0);" style="float: right; background-color: rgb(238, 238, 238);"> 
<button id="btnEditClient_204" title="Edit" style="float:right;"> 
<br> 
</span> 
<div id="yearsContainer_204"> 
</div> 
</div> 
<div id="ClientAccordian_210" class="accordion ui-accordion ui-widget ui-helper-reset ui-accordion-icons" role="tablist"> 
<h3 id="H3Client_210" class="ui-accordion-header ui-helper-reset ui-state-active ui-corner-top" role="tab" aria-expanded="true" tabindex="0"> 
<div class="ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content-active" role="tabpanel" style=""> 
<span id="btnAddYear" class="buttons"> 
<button onclick="javascript:ShowHideAddYear(210,0);" style="float: right; background-color: rgb(238, 238, 238);"> 
<button id="btnEditClient_210" title="Edit" style="float:right;"> 
<br> 
</span> 
<div id="yearsContainer_210"> 
</div> 
</div> 
<div id="ClientAccordian_209" class="accordion ui-accordion ui-widget ui-helper-reset ui-accordion-icons" role="tablist"> 
<div id="ClientAccordian_211" class="accordion ui-accordion ui-widget ui-helper-reset ui-accordion-icons" role="tablist"> 
<div id="ClientAccordian_215" class="accordion ui-accordion ui-widget ui-helper-reset ui-accordion-icons" role="tablist"> 
<h3 id="H3Client_215" class="ui-accordion-header ui-helper-reset ui-state-active ui-corner-top" role="tab" aria-expanded="true" tabindex="0"> 
<div class="ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content-active" role="tabpanel" style=""> 
<span id="btnAddYear" class="buttons"> 
<button onclick="javascript:ShowHideAddYear(215,0);" style="float: right; background-color: rgb(238, 238, 238);"> 
<button id="btnEditClient_215" title="Edit" style="float:right;"> 
<br> 
</span> 
<div id="yearsContainer_215"></div> 
</div> 
</div> 
</div> 
</div> 

에 이 버튼 3이 나타납니다. 더 많은 문자가 표시 될 수 있습니다. <button onclick="javascript:ShowHideAddYear(i,j)..>

또는 //span[@id=’btnAddYear’]/button[text()=’Add Year’]과 같은 일반적인 위치 표시자가 작동하지 않습니다. 누군가가 버튼을 유일하게 선택하는 신뢰할 수있는 위치 표시기 작성을 도와 줄 수 있습니까?

답변

0

제공된 html에 '올해 추가'라는 텍스트가 표시되지 않습니다. // span {@ id = 'btnAddYear']/button [1]로 변경하면 작동합니까?

+0

XPath는 0 기반 (C# 등)과 달리 1 기반 인덱서를 사용합니다. 즉, XPath 목록의 첫 번째 요소는 [0]이 아니라 [1]이됩니다. – Arran

+0

안녕하세요, 스펜서, 응답을 주셔서 감사합니다, 슬프게도 [0] 버튼이 작동하지 않습니다. 또한 해당 텍스트는 각 범위 아래에서 아래 보이는 것과 같이 발견됩니다.

+0

추가 [1] – Spencer

0

어떨까요?

'//span[@id="btnAddYear"]//button[contains(., "Add Year")]' 
+0

// span [@ id = 'btnAddYear ']/button [(.,'Add Year ')]가 작동하지 않습니다. // span을 사용하면 작동하지 않는 것 같습니다 .. 그냥 객체를 보지 않습니다. w 암탉의 선물! –

1

입력하신 분들께 고맙습니다. 요소로 이동하여 '입력'이벤트 등을 실행하는 등 다양한 작업을 수행했지만 아무 것도 효과가 없었습니다. 이것은 Selenium IE Driver의 문제로 밝혀졌습니다. http://code.google.com/p/selenium/issues/detail?id=5142