日期选择器-SeleniumWebDriverJava
我正在尝试创建一个方法来单击特定日期,它基于我只想在方法中传递日期、月份和年份作为参数的月份和年份 我也在网上搜索,但我没有找到我的问题的答案 下面是我的方法和我的测试示例应用程序url 我使用的网址: 我的做法:日期选择器-SeleniumWebDriverJava,java,selenium,selenium-webdriver,Java,Selenium,Selenium Webdriver,我正在尝试创建一个方法来单击特定日期,它基于我只想在方法中传递日期、月份和年份作为参数的月份和年份 我也在网上搜索,但我没有找到我的问题的答案 下面是我的方法和我的测试示例应用程序url 我使用的网址: 我的做法: 实际上,您不需要直接操作日期选择器。您可以直接在输入字段中键入日期字符串。它必须采用正确的格式,例如: WebElement dateInput = driver.findElement(By.id("DepartDate")); dateInput.sendKeys("Sat, 6
实际上,您不需要直接操作日期选择器。您可以直接在输入字段中键入日期字符串。它必须采用正确的格式,例如:
WebElement dateInput = driver.findElement(By.id("DepartDate"));
dateInput.sendKeys("Sat, 6 Jun, 2015");
现在,您需要输入并使用参数。此代码可能会有所帮助
try{
WebElement dateWidget = driver.findElement(By.xpath(OR.getProperty(object)));
List<WebElement> rows = dateWidget.findElements(By.tagName("tr"));
List<WebElement> columns = dateWidget.findElements(By.tagName("td"));
for (WebElement cell: columns){
if (cell.getText().equals(data))
{
cell.findElement(By.linkText(data)).click();
break;
}
}
}catch(Exception e){
return Constants.KEYWORD_FAIL+" -- Not able to select the date"+e.getMessage();
}
哇,回答得很好。我用了你的样品,效果很好。但在另一种情况下,我想通过单击日期来选择日期。我不想输入日期。你能告诉我怎么做吗?@forumqaa谢谢,这是约会吗?我问这个问题的原因是,我试图确定是否有必要年复一年、月复一月地来回。是的,年复一年、月复一月是必要的。我想创建一个将日期、月份和年份作为参数传递的方法。请参见上面我的方法,但我无法基于给定的日期、月份和年份单击特定的日期。最后,我将在另一个类中调用此方法,并在该方法中传递日期、月份和年份。我无法更新您的答案,因为我没有分数,我将很快获得这些分数,我将更新投票。您是否正在为日期控件本身编写测试。否则,只在文本字段中设置日期是实用的。您可以将传递的参数转换为可接受的字符串。
try{
WebElement dateWidget = driver.findElement(By.xpath(OR.getProperty(object)));
List<WebElement> rows = dateWidget.findElements(By.tagName("tr"));
List<WebElement> columns = dateWidget.findElements(By.tagName("td"));
for (WebElement cell: columns){
if (cell.getText().equals(data))
{
cell.findElement(By.linkText(data)).click();
break;
}
}
}catch(Exception e){
return Constants.KEYWORD_FAIL+" -- Not able to select the date"+e.getMessage();
}