Selenium Webdriver - 在屏幕截图中捕获 URL

Selenium Webdriver - Capture URL in screenshot

我了解屏幕截图功能基本上相当于绘制 DOM。由于 URL 不是 DOM 的一部分,因此屏幕截图不包含 URL。但是有什么解决方法可以将 URL 捕获为屏幕截图的一部分吗?

绝对正确,在 Selenium 中还不可能在屏幕截图中显示 URL,这里是参考 Link,说明相同。但作为解决方法的一部分,我建议您首先使用

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

请记住,如果必须拍摄更多的屏幕截图,此解决方法可能会变得非常耗时,但如果您只想在 AUT 的单个 运行 中拍摄一个屏幕截图,则它会很有效。其次,一旦您将屏幕截图复制到剪贴板中,它又取决于您希望如何进一步自动化它,通过使用像 Sikuli 这样的第三方工具,您可以轻松地将它与 selenium 集成。

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

目前无法使用 webdriver。

您可以按照以下任何一种方法进行操作。 (您没有提到编程语言。这些示例在 Java 中。)

1.捕获当前桌面屏幕

机器人有 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