有人知道如何使用webdriver制作完整的显示屏截图吗? 在Selenium文档中,我读到了:(http://selenium.googlecode.com/git/docs/api/java/org/openqa/selenium/TakesScreenshot.html)
..
我使用Selenium Grid。我的集线器在Linux上,在windows上是节点。我尝试使用Robot,但它需要在linux上截图,但需要在windows上
答案 0 :(得分:0)
如果您想要当前运行的浏览器实例的屏幕截图,那么您可以使用以下代码执行此操作:
public static void captureScreen(WebDriver driver, String screenshotFileName)
{
String screenshotsFile = screenshotsFolder+screenshotFileName+imageExtention;
try {
File screenShot = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);
FileUtils.copyFile(screenShot, new File(screenshotsFile));
} catch (IOException e) {
}
}
但是如果您想截取活动窗口的截图(仅限浏览器),那么您可以使用Robot类。
修改强>
虽然现在为时已晚,但下面的链接包含您的答案。我认为对于那些正在寻找同样事物的人来说,这可能会有所帮助。 Screen shot issue in selenium webdriver
答案 1 :(得分:0)
您需要使用 FirefoxDriver 来截取整个页面。 Chrome和IE不支持它。
答案 2 :(得分:-1)
嗨试试如下,它将需要完整的网页屏幕截图
File scrFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);
//The below method will save the screen shot in defined drive with name "screenshot.png"
FileUtils.copyFile(scrFile, new File("yourPath\\screenshot.png"));