我想做以下事情,有人可以帮助我做错了吗。
1)打开代码中提到的网站
2)使用webdriver中的keydown和keyup事件输入文本“WELcoME”(大写和小写字母的混合)。
公共类KeysUpandDown {
public static void main(String[] args) {
WebDriver driver=new FirefoxDriver();
driver.get("http://fleet.idrivesafely.com");
driver.manage().window().maximize();
driver.findElement(By.linkText("Student Login")).click();
WebElement loc=driver.findElement(By.className("input1"));
Actions a= new Actions(driver);
a.moveToElement(loc)
.keyDown(Keys.SHIFT)
.sendKeys("wel")
.keyUp(Keys.SHIFT)
.sendKeys("co")
.keyDown(Keys.SHIFT)
.sendKeys("me");
a.perform();
}
答案 0 :(得分:0)
您的代码需要进行2次小更改。
改变1:
WebElement loc=driver.findElement(By.className("input1"));
指向页面上的三个Web元素,而不是使用
WebElement loc=driver.findElement(By.xpath("//input[@class='input1' and @name='pin_no']"));
更改2:它是一个文本字段,因此不是
a.moveToElement(loc)
使用
a.click(loc)
所以你的代码应该如下:
public static void main(String[] args) {
WebDriver driver=new FirefoxDriver();
driver.get("http://fleet.idrivesafely.com");
driver.manage().window().maximize();
driver.findElement(By.linkText("Student Login")).click();
WebElement loc=driver.findElement(By.xpath("//input[@class='input1' and @name='pin_no']"));
Actions a= new Actions(driver);
a.click(loc).keyDown(Keys.SHIFT).sendKeys("wel").keyUp(Keys.SHIFT).sendKeys("co").keyDown(Keys.SHIFT).sendKeys("me").perform();