簡體   English   中英

Selenium-如何遍歷webPage以查找所有必需元素並執行Click Action

[英]Selenium-How to iterate through webPage to Find all Necessary elements and perform Click Action

我有一種通過Xpath查找元素並執行Click動作的方法,但是如果元素在下一頁上可用,我該怎么做? 我知道我可以找到下一頁的xpath,然后單擊它並瀏覽它。 但是我也想回到初始頁面。

例如,我通過xpath找到了20個元素:

IList<IWebElement> Test= SeleniumDriver.WebDriver.FindElements(By.Xpath(""));

如果上面將找到20個元素,那么im將運行foreach循環。 所以它可以根據我的需要執行所有操作,但是如果第一頁只有10個元素,那么我該如何轉到下一頁以查找剩余的元素。 同樣在“測試”中,我沒有按順序獲取所有元素。 因此,我的foreach循環將找到第2個,可能是第3個,它將嘗試找到的將轉到下一頁,因此我必須轉到下一頁並找到該元素,對其進行驗證,然后返回初始頁。

請讓我知道是否有任何簡便的方法?

你可以這樣寫邏輯

IList<IWebElement> Test= SeleniumDriver.WebDriver.FindElements(By.Xpath(""));
for each WebElement ele {
if(isElementPresent(ele) {
   do Operation with ele
}
 else {
   go to second page
}
if(isElementPresent(ele) 
   do Operation with ele
Go to 1st page

}

如果您有包含信息的表,則將有一個到下一頁的按鈕(如果存在),因此您需要像在while循環中那樣獲取元素,並檢查是否存在next按鈕(如果是),單擊它並重復獲取元素直到按鈕存在

最好的方法是通過(pseudocode):

do
{
IList<IWebElement> Test= SeleniumDriver.WebDriver.FindElements(By.Xpath(""));

//HERE YOU CHECK IF BUTTON EXIST
if(isElementPresented(By.Id("")))
{
driver.FindElement(By.Id("")).Click;
}
else
{
//if button not exists
buttonExist = false;
}
}while(buttonExist);

暫無
暫無

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

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