如何使用selenium滚动网格中的水平条。这应该在多个选择中重复。我必须选择值并单击“提交”。我必须检查所有列标题。但是,有46列。请帮忙。我无法移动它。
List<WebElement> gridlabellist = driver.findElements(By.xpath(".//*[@id='gview_list']/div[3]/div/table/thead/tr/th"));
List<String> all_gridlabellist=new ArrayList<>();
Thread.sleep(1000);
int gl;
System.out.println(gridlabellist.size());
for(gl=0; gl<gridlabellist.size(); gl++)
{
String gridlabelname=gridlabellist.get(gl).getText();
boolean dislabel=gridlabellist.get(gl).isEnabled();
//System.out.println(labelname);
if((gridlabelname != null) && (gridlabelname.length()!=0) && dislabel)
{
System.out.println("\nGrid Label Names displayed: " + gridlabelname);
((JavascriptExecutor)driver).executeScript("window.scrollBy(2000,0)");
System.out.println("\nGrid Label Names displayed: " +gridlabelname);
}
all_gridlabellist.add(gridlabellist.get(gl).getText());
}
答案 0 :(得分:0)
尝试不同的方法&amp;测试它是否适合你
WebElement scroll = driver.findElement(By.xpath("//blah-blah"));
JavascriptExecutor js = (JavascriptExecutor)driver;
js.executeScript(
driver.execute_script("arguments[0].scrollIntoView()", scroll);
答案 1 :(得分:0)
这是一个非常老的问题,但仍然具有足够的相关性,可以用其他方法来回答,另一种解决此问题的方法是缩放,缩放至50-30%甚至10%;这将加载所有列,然后使用xpath读取它们。