Selenium cssSelector在IDE中工作,但在Webdriver中不工作

时间:2016-10-14 17:29:20

标签: java selenium selenium-webdriver css-selectors

我有一个使用Java/Selenium Webdriver自动化的网络系统。我有一个项目,我试图访问。它有一个复合类名。我已经尝试了我能够在这里找到的所有解决方案,到目前为止它们都没有工作。

提供的解决方案如下所示:

By elem = By.cssSelector("div.prdbox.saleshdr");
List<WebElement> elements = driver.findElements(elem);
System.out.println("Number of Items found: "+elements.size());

当我检查元素数组的大小时,它总是为零。

然而,我发现当我将选择器字符串放入Selenium IDE (2.9.1)并使用“查找”按钮时,它会识别正确的网页元素而不会有任何问题。

我不知道为什么它适用于IDE而不是我的代码。

2 个答案:

答案 0 :(得分:0)

尝试使用XPath选择元素?在过去,当我遇到使用cssSelector选择某些内容的问题时,我经常尝试使用XPath时取得了成功。

答案 1 :(得分:0)

在你选择的选择器前等待一段时间。

driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
List<WebElement> elements = driver.findElements(By.cssSelector("div.prdbox.saleshdr"));
System.out.println("Number of Items found: "+elements.size());

或尝试在Xpath或id的帮助下找到元素。

List<WebElement> elements = driver.findElements(By.xpath("your xpath"));

希望它能帮到你