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”,并将文本“我正在查找的文件”发送到文本字段后输入。
- 有一个选项,并选中该选项的复选框。
- 然后单击生成报告按钮。
我不完全确定问题是什么。一个可能发生的事情(除了我的复选框不工作之外)是在文件被选中之前点击生成报告按钮。我不完全确定如何避免这个问题。我应该增加隐含的等待时间吗?
是的,这工作。谢谢! –