![](/img/trans.png)
[英]How to verify tooltip text using Selenium WebDriver with java on a webpage
[英]Selenium Webdriver - Java - Verify partial text display with three dots at the end
以下文本顯示在網頁中。
HTML代碼如下 -
<tr>
<td valign="middle" align="left">
<div
class="ellipsis"
style="max-width: 425px; display: inline-block;">
HKCR\abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnop
</div>
</td>
使用Selenium WebDriver和Java,我想檢查只有部分文本在末尾顯示3個點。 從HTML代碼中,我只能看到全文
HKCR\abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnop
而不是最后有3個點的部分文本。 當我編寫以下代碼時,它輸出全文而不是3點的部分文本。
String text1 = webDriver.findElement(
By.xpath(".../tr/td[1]")
).getText();
所以,我很困惑如何驗證實際只顯示部分文本。 有人可以幫忙嗎?
這里的問題是Selenium以一種不捕獲省略號隱藏的文本溢出的方式檢測“可見性”。 可見性看起來缺少一組標准, 在webdriver規范中列出 ,CSS屬性/值“text-overflow:ellipsis”不是一個。
您仍然可以測試頁面上的元素是否使用此CSS屬性。 使用Selenium驗證您想要的div具有您希望它們具有的CSS文本溢出值.getCssValue(),例如,
String cssvalue = Login.driver.findElement(By.xpath(".//*[@id='ccleaner_options_exclude_div']/table/tbody/tr/td/div")).getCssValue("text-overflow");
並檢查該值是否為“省略號”。 只要設置了該值,理論上,瀏覽器應該截斷文本並在溢出之前添加省略號!
請嘗試以下代碼並回復
String text1 = Login.driver.findElement(By.xpath("//div[ends-with(@title,'...')]")).getText();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.