0

我正在使用 selenium web 驱动程序来自动化我的 web 应用程序。我正在使用java.awt.robot类来截取屏幕截图。当我运行我的测试时,它会打开浏览器,它会按照我的需要执行,它会在桌面屏幕上截取前窗口的屏幕截图。

实际需要:

我最小化了由 selenium 打开的浏览器窗口的屏幕,并在某些应用程序中执行了一些其他操作。在这种情况下,我的测试用例将完美执行,但屏幕截图不是浏览器窗口,而是我打开的应用程序。

我的需要是在浏览器窗口最小化时对其进行截图。

可以使用Robot吗?我并不是说我需要单独使用机器人类来截图。请也建议我其他方法。

请考虑我需要不使用TakesScreenshotselenium API 类的屏幕截图。

4

2 回答 2

1

据我所知,如果我们在屏幕上显示其他内容,我们将无法使用 Robot 类来拍摄浏览器窗口的快照。这是为了捕捉当前在您的 PC 屏幕上发生的任何事情。谢谢

于 2013-01-30T06:17:57.823 回答
0

尝试这个:

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();
    }      

于 2013-02-15T12:30:25.970 回答