环境:Firefox并使用Java编写(在Eclipse中)。框架:Selenium WebDriver
此代码执行的操作是单击日历按钮以选择字段1的值(日期/时间)。然后,它使用(Command-A)选择字段1中的所有内容,并使用(Command-C)复制输入。然后它会将值粘贴到字段2中。 期望:阅读以上内容。 实际:将最后一件事贴在我的剪贴板上,而不是第1栏中的内容。
注意:我可以通过手动复制字段1中的值来操作这些结果,然后当我重新运行测试时它将粘贴它。所以它基本上会将我手动复制的最后一件事粘贴到我的剪贴板中。
driver.findElement(By.xpath(".//*[@id='page-content']/div[1]/ul/li[2]/a")).click();
driver.findElement(By.className("ui-datepicker-trigger")).click();
driver.findElement(By.xpath(".//*[@id='ui-datepicker-div']/div[3]/button[1]")).click();
driver.findElement(By.xpath(".//*[@id='ui-datepicker-div']/div[3]/button[2]")).click();
driver.findElement(By.xpath(".//*[@id='entryTime']")).sendKeys(Keys.LEFT_CONTROL + "a",(Keys.LEFT_CONTROL + "c"));
driver.findElement(By.xpath(".//*[@id='expirationTime']")).clear();
WebElement element2 = driver.findElement(By.xpath(".//*[@id='expirationTime']"));
Actions action= new Actions(driver);
action.contextClick(element2).sendKeys(Keys.ARROW_DOWN).sendKeys(Keys.ARROW_DOWN).sendKeys(Keys.RETURN).build().perform();
答案 0 :(得分:1)
您可以复制如下。
Toolkit toolkit = Toolkit.getDefaultToolkit();
Clipboard clipboard = toolkit.getSystemClipboard();
clipboard.setContents(new StringSelection(driver.findElement(By.xpath(".//*[@id='entryTime']")).getAttribute("value")), null);