2012-05-03 62 views
0

進出口新的XPath和硒一個鏈接,我有一個需要能夠根據天氣或不是一個跨度有一定的文字點擊與硒的鏈接。示例代碼:如何點擊使用XPath和硒IDE

<div> 
    <span>Fri</span> 
    <ul> 
    <li> 
    <a href=#></a> 
    </li> 
    </ul> 
    </div> 
<div> 
    <span>Sat</span> 
    <ul> 
    <li> 
    <a href=#></a> 
    </li> 
    </ul> 
    </div> 

我的XPath是//*[text()[contains(.,'Fri')]]其找到正確的跨度,現在我想我可以使用//*[text()[contains(.,'Fri')]]../ul/li/a,但不起作用。

任何想法?

回答

3

硒IDE命令將是:

command: click 
target : //span[contains(text(),'Fri')]/following::a 

here

如下::所有節點是樹中的上下文節點後, 排除任何後代,屬性節點和命名空間節點。

請注意,您可能不會在xpath表達式的末尾編寫[1],以便從selenium IDE的所有匹配項中選擇第一個節點。

當你使用IDE,你也可以用更易於閱讀CSS選擇器:

command: click 
target : css=span:contains('Fri')+ul a 

至於您最初的XPath,你錯過了一個斜線../前:

//*[text()[contains(.,'Fri')]]/../ul/li/a 
+0

優秀,感謝突破下,使用您的意見,我能得到它與以下工作:'//跨度[文本()[含(「10」)]] /../ UL/LI/A /'但是,對於未來項目我想我會使用CSS選擇器,因爲它確實看起來更容易! – 4razmus