首先,等待正確的幀(根據HTML代碼,該框架的名稱是main_b
)
接下來,你不必有一個鏈接(<a>
標籤),所以By.partialLinkText
不能使用。使用By.name("field")
代替
最後,而不是點擊它來得到一個Select
對象:Select mySelect = new Select(el1);
和使用selectByVisibleText
,selectByValue
或selectByIndex
方法
所以一起看起來像這樣選擇它的一個選項:
wait.until(ExpectedConditions.frameToBeAvailableAndSwitchToIt("main_b"));
Select mySelect = new Select(
wait.until(
ExpectedConditions.elementToBeClickable(
By.name("field")
)));
// Select second option by visible text
mySelect.selectByVisibleText("Bacon Anna");
// Same option selected by value
mySelect.selectByValue("16344");
// Same option selected by index
new Select(el1).selectByIndex(1);
圖像中幀的名稱不是「正確」的,所以它可能沒有找到幀。並且與其中的「文本」沒有明顯的聯繫,所以這些代碼都不應該起作用。你得到的錯誤是什麼? –