簡體   English   中英

Sikuli Java查找包含特定文本的選擇選項

[英]Sikuli Java find a select option that contains specific text

我試圖在Java中使用Sikuli從select語句中單擊特定選項。

鑒於以下選擇語句:

<select name="mySelect">
  <option value="ab">AB 273xc Some Text</option>
  <option value="cd">CD i8df4 Some More Text</option>
  <option value="ef">EF q43th And Text Once More</option>
</select> 

如果我知道該選項中包含的完整文本,則可以進行以下操作:

driver.findElement(By.xpath("//select[@name='mySelect']/option[.='CD i8df4 Some More Text']")).click();

問題在於,字符串中始終存在隨機文本(在這種情況下為i8df4),該文本每次都會更改,因此我不知道該文本是什么。

因此,我想單擊最后包含文本“ Some More Text”的選項。 我看到有一個CONTAINS函數,但是在這種情況下(即使可以使用),我不知道該如何使用。

因此需要在選項部分中進行某種模式匹配或正則表達式,例如:

option[.='do pattern match here looking for Some More Text']

要測試一部分文本的值,可以使用contains() 因此,您可以嘗試以下操作:

"//select[@name='mySelect']/option[contains(.,'Some Text')]"

但我認為最好使用value屬性:

"//select[@name='mySelect']/option[@value='ab']"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM