//Screenshot
File src = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);
FileUtils.copyFile(src, new File(System.getProperty("user.dir") + "/screenshot/above.jpg"));
user.dir
는 보통 프로젝트가 위치한 폴더입니다.
스크린샷의 이름 같은 경우에는, 위 예제코드에서는 스크린샷의 이름이 고정입니다만, 보통은 스크린샷을 찍는 행위를 발생시킨 메소드 혹은 클래스명+날짜(+시간) 등의 조합으로 제목을 정하게 됩니다.
Selenium 4.0이상부터는 직접적으로 element에 대해서도 capture할 수 있습니다.
WebElement above = driver.findElement(RelativeLocator.with((By.tagName("input"))).above(By.tagName("select")));
above.sendKeys("Hello world");
File screenShot = above.getScreenshotAs(OutputType.FILE);
FileUtils.copyFile(screenShot, new File("./screenshot/above.jpg"));