对于混合应用程序,我需要滚动到页面末尾。我能怎么做 ? 我可以使用driver.scrollTo();滚动到精确元素;和driver.ScrollToExact();
但我想从上到下滚动应用程序。 有人能告诉我吗?
答案 0 :(得分:2)
@Test
public void testScroll()throws Exception
{
for(int i=0;i<4;i++)
{
Thread.sleep(2000);
if (driver.findElement(By.name("end_item")).isDisplayed())
{
driver.findElement(By.name("end_item")).click();
break;
}
else
{
verticalScroll();
}
}
}
public void verticalScroll()
{
size=driver.manage().window().getSize();
int y_start=(int)(size.height*0.60);
int y_end=(int)(size.height*0.30);
int x=size.width/2;
driver.swipe(x,y_start,x,y_end,4000);
}
这将帮助您滑动直至结束或直到您想要的任何位置。
答案 1 :(得分:1)
您可以使用坐标滚动到页面末尾,甚至可以找到页面上可用的字符串。使用此:
TouchAction action = new TouchAction(driver).longPress(20,y).moveTo(20, 10).release();
action.perform();
答案 2 :(得分:0)
我也有同样的问题。我所做的是,使用位于该特定页面("text should be dynamic, it should be constant")
底部的文本,然后使用以下代码
String text="ABC";
driver.scrollTo(text);
在此代码之后,您可以执行任何操作..例如,请参阅以下代码
String text="ABC";
driver.scrollTo(text);
driver.findElement(By.xpath("//*[@text='"+text+"']")).click();