有没有一种方法可以获取带有标题的硒屏幕截图?我尝试了下面的代码,但屏幕截图没有标题。
我有一个测试用例,需要单击一个链接并确保该操作必须带到新选项卡,以便作为证据,我必须附加捕获功能,其中有两个选项卡。

public static void main (String args[]) throws IOException {
    DesiredCapabilities dc = new DesiredCapabilities();
    RemoteWebDriver driver;

    URL url = new URL("http://localhost:4444/wd/hub");
    dc.setCapability(CapabilityType.BROWSER_NAME, BrowserType.CHROME);
    dc.setCapability(CapabilityType.PLATFORM, "MAC");

    driver = new RemoteWebDriver(url, dc);
    driver.manage().window().maximize();
    driver.get("https://google.com");

    new WebDriverWait(driver, 20).until(ExpectedConditions.presenceOfElementLocated(By.name("q")));

    File getImage = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);
    FileUtils.copyFile(getImage, new File("/Users/path/screenshot.jpg"));

    driver.quit();
}


当前结果
java - Selenium Takes屏幕截图和标题-LMLPHP

预期结果
java - Selenium Takes屏幕截图和标题-LMLPHP

最佳答案

不,您不能,Selenium中的屏幕截图功能会获取渲染的DOM的图像。浏览器镶边(即由运行浏览器的OS呈现的浏览器的UI组件)不是DOM的一部分,因此Selenium并不知道。

下一个问题是,为什么要在图像中使用浏览器镶边?如果您只是想查找显示的URL(正如您的问题所暗示的那样),则可以使用命令driver.getCurrentUrl();

关于java - Selenium Takes屏幕截图和标题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56659930/

10-12 17:58