[英]java.awt.Robot: how to send mouse/keyboard events to a specific window? with cross-platform support?
[英]How to set focus to a window in java.awt.Robot
我正在使用Selenium Web驱动程序来自动化我的Web应用程序。 我正在使用java.awt.robot
类来截屏。 当我运行测试时,它将打开浏览器,并会根据需要执行,并在桌面屏幕上显示前窗的屏幕截图。
实际需求:
我最小化了硒打开的浏览器窗口的屏幕,并在某些应用程序中执行了其他操作。 在那种情况下,我的测试用例将完美执行,但屏幕截图不是浏览器窗口,而是我打开的应用程序。
我需要在最小化浏览器窗口时截取它的屏幕截图。
可以使用Robot
吗? 我并不是说我需要单独使用机械手类来截图。 请也建议我其他方式。
请考虑我需要使用硒API的TakesScreenshot
类来TakesScreenshot
屏幕截图。
据我所知,如果我们正在屏幕上查看其他内容,则将无法使用Robot类来获取Browser窗口的快照。 它将捕获您当前在其中激活的PC屏幕上发生的一切。 谢谢
尝试这个:
File scrFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE); try { FileUtils.copyFile(scrFile, new File(System.getProperty("user.dir")+"\\\\screenshots\\\\"+fileName+".jpg")); } catch (IOException e) { e.printStackTrace(); }
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.