0

如何製作一個循環來掃描一個矩陣並逐個輸入數據並填寫條目?循環填充數據輸入 - Selenium WebDriver

該圖顯示了這個問題......我需要花費數次的方法,並從中獲取數據並填寫條目並遵循正常流程的自動化。

我可以在數據輸入方法填寫:

driver.findElement(By.xpath("/html/body/center/table/tbody/tr[2]/td[2]/form/table[3]/tbody/tr[17]/td/input[1]")).sendKeys(offers()); 

我點擊過濾器中的數據來填充它的TextArea:

driver.findElement(By.xpath("/html/body/center/table/tbody/tr[2]/td[2]/form/table[3]/tbody/tr[17]/td/input[2]")).click(); 

請在文本區域的人口數據:

Select selecionapermanenciamulta = new Select(driver.findElement(By.xpath("/html/body/center/table/tbody/tr[2]/td[2]/form/table[3]/tbody/tr[19]/td/table/tbody/tr/td[1]/select"))); 
     selecionapermanenciamulta.selectByIndex(0); 

我點擊箭頭把他帶到另一邊:

driver.findElement(By.xpath("/html/body/center/table/tbody/tr[2]/td[2]/form/table[3]/tbody/tr[19]/td/table/tbody/tr/td[2]/input[1]")).click(); 

loop

+0

也許我失去了一些東西,但它看起來像你可以把這些代碼在for循環中完成什麼你要。 'for(int i = 0; i Andrio

+0

@Andrio你可以告訴我它是如何在我的代碼中的嗎?我是編程新手。 –

回答

0

所以有它循環,你列出的操作,您可以使用一個for循環,像這樣:

int numOfTimesToLoop = 5; 

    for (int i = 0; i < numOfTimesToLoop; i++) { 
     driver.findElement(By.xpath("/html/body/center/table/tbody/tr[2]/td[2]/form/table[3]/tbody/tr[17]/td/input[1]")).sendKeys(offers()); 
     driver.findElement(By.xpath("/html/body/center/table/tbody/tr[2]/td[2]/form/table[3]/tbody/tr[17]/td/input[2]")).click(); 

     Select selecionapermanenciamulta = new Select(driver.findElement(By.xpath("/html/body/center/table/tbody/tr[2]/td[2]/form/table[3]/tbody/tr[19]/td/table/tbody/tr/td[1]/select"))); 
     selecionapermanenciamulta.selectByIndex(0); 

     driver.findElement(By.xpath("/html/body/center/table/tbody/tr[2]/td[2]/form/table[3]/tbody/tr[19]/td/table/tbody/tr/td[2]/input[1]")).click(); 
    } 

,例如,將循環5次。對於這種循環,你需要知道你需要循環多少次。

或者,你可以使用while循環循環,直到某些條件得到滿足:

while (someConditionNotYetMet) { 
    //all those webdriver actions 
} 
+0

它沒有工作,它做了以下幾段,發出錯誤 無法找到元素:'driver.findElement(By.xpath(「/ html/body/center/table/tbody/tr [2]/td [ 2] /形式/表[3]/tbody的/ TR [17]/TD /輸入[1]「))的SendKeys(報價());」。 –

+0

@PauloSilva這是你提供的代碼。如果找不到,那麼xpath選擇器必須出錯。 – Andrio

+0

我不明白他爲什麼在迭代時沒有找到撥號盤,因爲他發現的第一遍通常會放置ID和名稱,並在重複操作時發生錯誤。 –