在 Selenium WebDriver 的日期选择器中查找值
Find a value inside a datepicker in Selenium WebDriver
我创建了一个方法,该方法从日期选择器中获取所有值并将其放入 List 类型的变量中。然后我做了一个 FOR 来寻找特定的一天,当我找到那一天时,我点击它。
现在我需要实现一个在最后一天无效时显示错误消息的例程。我正在使用 JOptionPane.showMessageDialog class 来显示错误。但问题是每次脚本进入IF测试值时都会出现提示,找不到。
public void campoRechamada(String dia) {
driver.findElement(By.id("txtDtRechamada")).click();
WebElement dateWidget = driver.findElement(rechamada);
// List<WebElement> linhas = dateWidget.findElements(By.tagName("tr"));
List<WebElement> colunas = dateWidget.findElements(By.tagName("td"));
for (WebElement cell : colunas) {
if (cell.getText().equals(dia)) {
cell.findElement(By.linkText(dia)).click();
break;
} else {
JOptionPane.showMessageDialog(null, "The date entered in the method is invalid: " + dia, "Erro",
JOptionPane.ERROR_MESSAGE);
}
}
}
Passage from the parameter to the method.
Method that receives the parameter and validates whether the day is valid or not.
Datepicker
为循环添加一个布尔标志outsiet,并在找到日期时将其更改为true。
然后在for循环后检查flag是true还是false:
public void campoRechamada(String dia) {
driver.findElement(By.id("txtDtRechamada")).click();
WebElement dateWidget = driver.findElement(rechamada);
// List<WebElement> linhas = dateWidget.findElements(By.tagName("tr"));
List<WebElement> colunas = dateWidget.findElements(By.tagName("td"));
boolean find = false;
for (WebElement cell : colunas) {
if (cell.getText().equals(dia)) {
find = true;
cell.findElement(By.linkText(dia)).click();
break;
}
}
if(find == false) {
JOptionPane.showMessageDialog(null, "The date entered in the method is invalid: " + dia, "Erro",
JOptionPane.ERROR_MESSAGE);
}
}
我创建了一个方法,该方法从日期选择器中获取所有值并将其放入 List 类型的变量中。然后我做了一个 FOR 来寻找特定的一天,当我找到那一天时,我点击它。
现在我需要实现一个在最后一天无效时显示错误消息的例程。我正在使用 JOptionPane.showMessageDialog class 来显示错误。但问题是每次脚本进入IF测试值时都会出现提示,找不到。
public void campoRechamada(String dia) {
driver.findElement(By.id("txtDtRechamada")).click();
WebElement dateWidget = driver.findElement(rechamada);
// List<WebElement> linhas = dateWidget.findElements(By.tagName("tr"));
List<WebElement> colunas = dateWidget.findElements(By.tagName("td"));
for (WebElement cell : colunas) {
if (cell.getText().equals(dia)) {
cell.findElement(By.linkText(dia)).click();
break;
} else {
JOptionPane.showMessageDialog(null, "The date entered in the method is invalid: " + dia, "Erro",
JOptionPane.ERROR_MESSAGE);
}
}
}
Passage from the parameter to the method. Method that receives the parameter and validates whether the day is valid or not.
Datepicker
为循环添加一个布尔标志outsiet,并在找到日期时将其更改为true。
然后在for循环后检查flag是true还是false:
public void campoRechamada(String dia) {
driver.findElement(By.id("txtDtRechamada")).click();
WebElement dateWidget = driver.findElement(rechamada);
// List<WebElement> linhas = dateWidget.findElements(By.tagName("tr"));
List<WebElement> colunas = dateWidget.findElements(By.tagName("td"));
boolean find = false;
for (WebElement cell : colunas) {
if (cell.getText().equals(dia)) {
find = true;
cell.findElement(By.linkText(dia)).click();
break;
}
}
if(find == false) {
JOptionPane.showMessageDialog(null, "The date entered in the method is invalid: " + dia, "Erro",
JOptionPane.ERROR_MESSAGE);
}
}