Selenium Webdriver - 截图中的捕获URL

时间:2015-01-28 13:34:17

标签: selenium-webdriver webdriver screenshot

据我所知,屏幕截图功能基本上可以用作绘制DOM。由于URL不是DOM的一部分,因此屏幕截图不包含URL。但有没有解决方法来捕获URL作为截图的一部分?

2 个答案:

答案 0 :(得分:4)

目前使用webdriver无法实现。

您可以按照以下任何一种方法进行操作。 (你没有提到编程语言。这些例子都是用Java编写的。)

1。捕获当前桌面屏幕

Robot有createScreenCapture方法。所以,我会选择那个&它很容易实现。

    Robot robot = new Robot();
    BufferedImage screenShot = robot.createScreenCapture(new Rectangle(Toolkit.getDefaultToolkit().getScreenSize()));
    ImageIO.write(screenShot, "JPG", new File("ScreenShot.jpg"));

2。您可以在图像中写下URL。

这可能是一种令人讨厌的方法,因为它可能会隐藏图像中的信息。但这也很容易实现。

选中此 answer

3。将当前URL作为元数据添加到图像

选中此 answer

答案 1 :(得分:0)

绝对正确,在 Selenium 中无法在屏幕截图中获取网址,这里的参考资料Link也是如此。但作为解决方法的一部分,我建议你首先使用

获取屏幕截图
robot.keyPress(KeyEvent.VK_PRINTSCREEN);

如果您需要拍摄更多屏幕截图,请记住此解决方法可能会耗费大量时间,但如果您只想在AUT的单次运行中拍摄一个屏幕截图,则可以提高效率。第二,一旦你复制了剪贴板中的屏幕截图,它又取决于你如何进一步自动化它。通过使用像Sikuli这样的第三方工具,你可以很容易地将它与selenium集成。

由于这是一种解决方法,我不能保证成功。