Java+selenium 如何下拉移动滚动条【实战】

一、场景:在编写脚本过程中需要定位的元素,在界面的底部,需要拖拽下拉滚动条,再进行定位元素。

实现思路:用Selenium 里面的 scrollTo 方法实现

二、脚本示例:

1. 用例设计

1 @Then("^input the keyWords (\d+) and edit leaveCode (.+)$")
2      public void input_the_keyWords_and_edit_leaveCode_PL(String keyWords, String leaveCode, DataTable data) throws Throwable {
3          HashMap<String, String> hash = DataTableUtils.toHashMap(data);
4          String minimumLeaveNumber = hash.get("最小请假数");
5          String minimumLeaveUnit = hash.get("请假最少单位");
6          vp.editLeaveCodeSet(keyWords, leaveCode, minimumLeaveNumber, minimumLeaveUnit);
7      }

2.封装滚动条方法:

public static void scrollTo(WebElement element, WebDriver driver) {
        JavascriptExecutor executor = (JavascriptExecutor) driver;
        executor.executeScript("arguments[0].scrollIntoView(false);", element);
    }

3.实现滚动条下拉关键代码:

1   String xpath = "//button[text()='保存']";  
2   WebElement saveButton = waitFor(By.xpath(xpath));
3   WebDriverUtils.scrollTo(saveButton, driver);
4   waitLoading();
5   find(By.xpath(xpath)).click();    
原文地址:https://www.cnblogs.com/Shanghai-vame/p/7805888.html