如何在java上使用selenium在移动浏览器中滑动

如何在java上使用selenium在移动浏览器中滑动,java,selenium,swipe,gesture,Java,Selenium,Swipe,Gesture,我想在java上使用selenium浏览移动网站 我尝试了以下代码。但这帮不了我 1. //Swipe Right to Left side of the Media Viewer First Page WebElement firstPages = driver.findElement(By.id("media-list")); TouchActions flick = new TouchActions(driver).flick

我想在java上使用selenium浏览移动网站

我尝试了以下代码。但这帮不了我

1. //Swipe Right to Left side of the Media Viewer First Page
                WebElement firstPages = driver.findElement(By.id("media-list"));
                TouchActions flick = new TouchActions(driver).flick(firstPages,-100,0,0);
                flick.perform();

  Result:-  org.openqa.selenium.chrome.ChromeDriver cannot be cast to org.openqa.selenium.interactions.HasTouchScreen


2. //perform swipe gesture
               TouchActions swipe = new TouchActions(driver).flick(0, -20);
               swipe.perform();
3.             JavascriptExecutor js = (JavascriptExecutor) driver;
            HashMap<String, Double> swipeObject = new java.util.HashMap<String, Double>();
            swipeObject.put("startX", 0.95);
            swipeObject.put("startY", 0.5);
            swipeObject.put("endX", 0.05);
            swipeObject.put("endY", 0.5);
            swipeObject.put("duration", 1.8);
            js.executeScript("mobile: swipe", swipeObject);
        }

 Result:  unknown error: swipe is not defined(..)
1//从媒体查看器第一页的右侧向左滑动
WebElement firstPages=driver.findElement(By.id(“媒体列表”);
TouchActions flick=新的TouchActions(驱动程序).flick(第一页,-100,0,0);
flick.perform();
结果:-org.openqa.selenium.chrome.ChromeDriver无法转换为org.openqa.selenium.interactions.HasTouchScreen
2. //执行刷卡手势
触摸动作滑动=新的触摸动作(驱动程序).flick(0,-20);
swipe.perform();
3.JavascriptExecutor js=(JavascriptExecutor)驱动程序;
HashMap swipeObject=new java.util.HashMap();
swipeObject.put(“startX”,0.95);
swipeObject.put(“startY”,0.5);
swipeObject.put(“endX”,0.05);
swipeObject.put(“endY”,0.5);
swipeObject.put(“持续时间”,1.8);
js.executeScript(“移动:滑动”,swipeObject);
}
结果:未知错误:未定义刷卡(..)

您可以通过javascript触发事件,例如使用


你有错误吗?你能说得更具体些吗?这包括WebDriver和浏览器版本。@AndrewRegan我已经更新了我的问题。你能看一下吗?我已经试过你的密码了。但它不执行滑动或任何操作,也没有错误。看起来您可能需要触发touchstart、touchmove和touchend事件,而不是滑动。JQuery示例。有关活动的更多信息
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("$('#media-list').trigger('swipe', {startX: 0.95})");