在Keys类下有一个方法叫chord(参数1,参数2),在键盘输入事件也就是多个键同时按下的效果。
package rjcs;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.List;
import org.openqa.selenium.interactions.Actions;
import org.apache.commons.io.FileUtils;
import org.openqa.selenium.TakesScreenshot;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.interactions.Actions;
import org.openqa.selenium.By;
import org.openqa.selenium.Keys;
import org.openqa.selenium.WebElement;
import org.testng.annotations.Test;
import org.openqa.selenium.*;
import java.awt.Rectangle;
import java.awt.Robot;
import java.awt.Toolkit;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import org.openqa.selenium.OutputType;
import com.thoughtworks.selenium.SeleneseTestNgHelper;
public class qyjt
{
public static void main(String[] args)
{
System.setProperty("webdriver.firefox.bin","C:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe"); //设置火狐的安装路径,防止系统找不到
FirefoxDriver driver = new FirefoxDriver(); //初始化FireFox浏览器实例,并打开浏览器
try
{
driver.manage().window().maximize(); //最大化窗口
Thread.sleep(5000);
driver.manage().window().maximize(); //最大化窗口
Thread.sleep(5000);
driver.get("https://www.baidu.com"); //打开一个网址,方法一
Thread.sleep(5000);
Actions action = new Actions(driver);
Thread.sleep(5000);
driver.findElementById("kw").sendKeys("seleniuml");
Thread.sleep(5000);
action.sendKeys(driver.findElementById("kw"),Keys.BACK_SPACE).perform(); //删除多于的l字母
driver.findElementById("kw").click();
driver.findElementById("kw").sendKeys(Keys.chord(Keys.CONTROL, "a"));
driver.findElementById("kw").sendKeys(Keys.chord(Keys.CONTROL, "c"));
driver.findElementById("kw").click();
driver.findElementById("kw").sendKeys("+");
driver.findElementById("kw").click();
driver.findElementById("kw").sendKeys(Keys.chord(Keys.CONTROL, "v"));
Thread.sleep(5000);
driver.findElementById("su").sendKeys(Keys.ENTER);;
Thread.sleep(10000);
}catch (Exception e)
{
e.printStackTrace();
}finally
{
driver.quit();
}
}
}