Selenium XPath的前置元素

时间:2015-05-29 16:59:40

标签: selenium

我有一个场景,其中html标签是通过ajax动态生成的,如下所示

<div>
   <span class="rptName">QLMS</span>
   <span id="button_id_91">//generated dynamically
     <span id="button_span_right_91">    
       <span id="button_91"/>
     </span>
   </span>
   <span class="rptName">QLRS</span>
   <span id="button_id_92">//generated dynamically
     <span id="button_span_right_92">    
       <span id="button_92"/>
     </span>
   </span>
</div>

span元素是动态生成的,在这种情况下,我们如何根据文本搜索(QLMS,span中存在的QLRS)获取xpath。 我需要在

上做一个点击事件
  

<span id="button_92" or "91"/>

请告诉我如何在这种情况下实现。

提前致谢

1 个答案:

答案 0 :(得分:3)

看起来很棘手。使用following-sibling会有所帮助。我还使用部分span 右侧过滤掉了id。试试这个:

//span[contains(text(),'QLRS')]/following-sibling::span//span[not(contains(@id,'right'))]