2015-08-24 57 views
0

我想在下面的代碼中獲得文字'拒絕'。獲取無標籤元素硒的文本

<tr bgcolor="#f0f0f0"> 
    <td class="bodyText" width="45%"> 
    <td class="bodyText" width="55%"> 
     <b>Status:</b> 
     Rejected        
     <input type="checkbox" title="XYZ" disabled=""/> 
     Expired                
     <b>Strategy:</b> 
     <a href="ABC.aspx?accountID=123456&loanAppID=891011&StrategyName="/> 
    </td> 
</tr> 

文本正在改變,我需要相應地驗證它。我如何檢索文本並進行驗證。 我想添加元素

by.xpath(".//b[contains(.,'Status')]") 

並獲得子節點。但在這裏不知道該怎麼做。任何人都可以請幫助以任何方式檢索文本?

回答

0

這應該得到你包含的元素(假設沒有其他的TD就像這個例子HTML以外的TD)。

driver.findElement(By.cssSelector("td.bodyText[width='55%'])); 

一旦你,你可以做以下之一:

  1. 一個.getText()和「狀態:X」做一個正則表達式,其中「X」是你在找什麼。

  2. a .getAttribute("innerHTML")並解析HTML的這一部分...可能使用正則表達式。

+0

感謝俺們@JeffC,但也有其他的TD也。截至目前,我已經直接瞭解了元素的xpath,但不是一個可靠的東西,因爲它很容易改變。 – Ashi

+0

請在您關心的區域之外發布一些TD。可能有辦法排除這些。 – JeffC