在webdriver中,如何使用Java验证是否显示下拉字段

在webdriver中,如何使用Java验证是否显示下拉字段,java,webdriver,selenium-webdriver,Java,Webdriver,Selenium Webdriver,我需要验证下拉字段是否显示在屏幕上,是否在webdriver中使用Java。仅在另一个屏幕中选中复选框后,此下拉字段将显示在此屏幕中。我使用以下代码验证该字段是否显示,但它不会返回任何值,如true或false driver.findElements(By.name("ctl00$MasterPlaceHolder$DdlPwdExp")); driver.findElements(By.name("ctl00$MasterPlaceHolder$DdlSessionExp")); driver

我需要验证下拉字段是否显示在屏幕上,是否在webdriver中使用Java。仅在另一个屏幕中选中复选框后,此下拉字段将显示在此屏幕中。我使用以下代码验证该字段是否显示,但它不会返回任何值,如true或false

driver.findElements(By.name("ctl00$MasterPlaceHolder$DdlPwdExp"));
driver.findElements(By.name("ctl00$MasterPlaceHolder$DdlSessionExp"));
driver.findElements(By.name("ctl00$MasterPlaceHolder$DdlfailedLogin"));

有人能帮我吗。感谢您的帮助。

应使用xUnit系统和资产进行验证。例如,JUnit或TestNG for Java。使用TestNG可以通过以下方式进行验证(对于JUnit,参数的顺序略有不同):


首先,我用上述来自Khrol的答案解决了我的问题,我还尝试了另一种方法,完全解决了我的问题

int size = driver.findElements(By.name("ctl00$MasterPlaceHolder$DdlPwdExp")).size();
if (size > 0)
{
System.out.println("No. of Days for Password Expiration field: is displayed");
}
else
{
System.out.println("No. of Days for Password Expiration field: is not displayed");
}

我不明白。你能解释一下更多的细节和代码吗?“findElement”方法有两种风格:一种是返回一个唯一的元素,或者抛出一个异常,或者抛出一个包含元素的列表,或者抛出一个空列表。如果代码是动态生成的,则需要添加额外的配置以等待DOM树中的ajax数据更改。上面的字段是下拉列表,我需要验证当选中X屏幕中的复选框时,它们是否显示在Y屏幕中。
int size = driver.findElements(By.name("ctl00$MasterPlaceHolder$DdlPwdExp")).size();
if (size > 0)
{
System.out.println("No. of Days for Password Expiration field: is displayed");
}
else
{
System.out.println("No. of Days for Password Expiration field: is not displayed");
}