有没有一种方法可以获取带有标题的硒屏幕截图?我尝试了下面的代码,但屏幕截图没有标题。
我有一个测试用例,需要单击一个链接并确保该操作必须带到新选项卡,以便作为证据,我必须附加捕获功能,其中有两个选项卡。
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();
}
当前结果
预期结果
最佳答案
不,您不能,Selenium中的屏幕截图功能会获取渲染的DOM的图像。浏览器镶边(即由运行浏览器的OS呈现的浏览器的UI组件)不是DOM的一部分,因此Selenium并不知道。
下一个问题是,为什么要在图像中使用浏览器镶边?如果您只是想查找显示的URL(正如您的问题所暗示的那样),则可以使用命令driver.getCurrentUrl();
。
关于java - Selenium Takes屏幕截图和标题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56659930/