0
我試圖自動化一個涉及下載每月報告的過程。並不總是單擊複選框
//Set Call handler
Select handlerdd = new Select(driver.findElement(By.cssSelector("#searchType")));
handlerdd.selectByValue("select");
//Wait
driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);
//Search, choose is exactly as the filtering option
Select searchcriteriadd = new Select(driver.findElement(By.cssSelector("table.content-form:nth-child(1) > tbody:nth-child(1) > "
+ " tr:nth-child(1) > td:nth-child(1) > select:nth-child(2)")));
searchcriteriadd.selectByVisibleText("Is Exactly");
//Search box
WebElement search = driver.findElement(By.cssSelector("#searchString"));
search.sendKeys("File I Want");
search.sendKeys(Keys.ENTER);
driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);
//Explicitly wait until element is seen
WebDriverWait wait = new WebDriverWait(driver, 20);
wait.until(ExpectedConditions.visibilityOfElementLocated(By.cssSelector("td.content-grid-th-delete > input:nth-child(1)")));
//Checkbox
driver.findElement(By.cssSelector("td.content-grid-th-delete > input:nth-child(1)")).click();
//Wait
driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);
//Generate Report button click
driver.findElement(By.cssSelector("fieldset.content-buttonbar:nth-child(10) > legend:nth-child(1) > button:nth-child(1)")).click();
的過程如下
從下拉菜單(handlerdd)時,選擇選項被選擇並顯示搜索欄。
將搜索過濾器設置爲「IsExactly」,並將文本「我正在查找的文件」發送到文本字段後輸入。
- 有一個選項,並選中該選項的複選框。
- 然後單擊生成報告按鈕。
我不完全確定問題是什麼。一個可能發生的事情(除了我的複選框不工作之外)是在文件被選中之前點擊生成報告按鈕。我不完全確定如何避免這個問題。我應該增加隱含的等待時間嗎?
是的,這工作。謝謝! –