Selenium:测试其Web属性“OVERFLOW”是自动/滚动的Web元素

在下一页中,只显示三个元素,我必须使用滚动条查看其他元素。
我正在使用selenium webdriver。
当我试图点击“第四行”或“第五行”时抛出了ElementNotVisibleException。
是否有任何方法可以移动scoll bar(或其他方式?)使“第四行”和“第五行”可见,然后可点击?
带有scoll bar的WebElement

Source code of this element: 
  
  • First Row
  • Second Row
  • Third Row
  • Fourth Row
  • Fifth Row

好吧,我没有看到任何seleniumapi这样做。

但是使用JavaScriptExecutor你可以做到这一点。

这是怎么回事

 //Select element by some method WebElement we = driver.findElement(By.id("elementid")); // create JSExecutor object JavascriptExecutor executor = (JavascriptExecutor)driver; // Do the JS click executor.executeScript("arguments[0].click();", we); 

第四 第五行最初不可见,您将不得不hover在其上下文之上以使其可见..最简单的方法是直接点击它将使用javascriptExecuter,

 ((JavascriptExecutor)driver).executeScript("$('html ul li+li+li+li>div').click();"); 

如果您可以使用id,name..etc等属性,查找元素将更容易,更快速,更高效。
上面的代码将点击“第四行”..