据我所知,屏幕截图功能基本上可以用作绘制DOM。由于URL不是DOM的一部分,因此屏幕截图不包含URL。但有没有解决方法来捕获URL作为截图的一部分?
答案 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集成。
由于这是一种解决方法,我不能保证成功。