无法在硒 RC 中找到动态下拉项
本文关键字:动态 RC | 更新日期: 2023-09-27 18:30:46
我是硒的新手,很长一段时间以来,我一直在下拉列表中找到一个通过从另一个下拉列表中选择项目来动态绑定的项目。 我的示例代码后跟:
硒。打开(".../默认.aspx");
硒。窗口最大化();
硒。点击("名称=dd国家");
硒。Click("//div[@id='ddCountry_DropDown']/div/ul/li[1]");
str = 硒。GetText("//div[@id='ddCountry_DropDown']/div/ul/li[1]");
硒。Type("name=ddCountry", strValue);
硒。点击("名称=ddCity");
硒。Click("//div[@id='ddCity_DropDown']/div/ul/li[1]");
str = 硒。GetText("//div[@id='ddCity_DropDown']/div/ul/li[1]");
硒。Click("id=btnRedirect");
硒。WaitForPageToLoad("30000");
在上面的代码中,我试图在国家/地区下拉列表中选择一个项目后这样做。 很少有项目在选择更改事件触发时绑定到城市下拉列表。 我的问题是" 硒。Click("//div[@id='ddCity_DropDown']/div/ul/li[1]");'"当此代码执行时,我收到诸如"找不到元素//div[@id='ddCity_DropDown']/div/ul/li[1]"之类的错误。请提前提供此问题的解决方案。
问候文卡特
这是因为城市下降是由一个国家下降绑定的。您需要在国家/地区下拉后添加一些有意的等待,以便显示城市下拉列表。
您可以在数据库代码之后的第一个测试用例中诱导一些等待,如下所示:
long end3 = System.currentTimeMillis() + 6000;
while(System.currentTimeMillis()<end3)
{
// Do nothing here Just time pass.
}
这将确保 Java 代码等待 6000 毫秒