有时候有些元素不便点击或者做其他的操作,这个时候可以借助selenium提供的Actions类,它可以模拟鼠标和键盘的一些操作,比如点击鼠标右键,左键,移动鼠标等操作。对于这些操作,使用perform()方法进行执行。
下面一个示例讲的是,在百度搜索中输入关键字java,然后把鼠标移动到搜索按钮上并用action类去操作鼠标左键实现点击搜索。
核心代码:
WebDriver driver-newFirefoxDriver();;
//设置等待页面完全加载的时间是10秒,如果在10秒内加载完毕,剩余时间不在等待
driver.manager().timeouts()pageLoadTimeout(10,TimeUnit.SECONDS);
driver.get("https//www.baidu.com/");
By inputBox=By.id("kw");
By searchButton=By.id("su");
Actions action=newActions(driver);////实例化action对象
//通过action模拟键盘输入java关键字到 输入框,只有使用了perform方法才会输入进去
action.sendKeys(driver.findElement(inputBox), "java").perform();
//鼠标模拟移动到搜索按钮
action.moveToElement(driver.findElement(searchButton)).perform();
//模拟点击操作
action.click().perform();
Thread.sleep(2000);
driver.quit();