关于selenium+java,实现部分截图功能,-针对单个元素的截图
生活随笔
收集整理的這篇文章主要介紹了
关于selenium+java,实现部分截图功能,-针对单个元素的截图
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
//生成截圖的方法
public class ElementPicture {public static File captureElement(File screenshot, WebElement element){try {BufferedImage img = ImageIO.read(screenshot);int width = element.getSize().getWidth();int height = element.getSize().getHeight();//獲取指定元素的坐標Point point = element.getLocation();//從元素左上角坐標開始,按照元素的高寬對img進行裁剪為符合需要的圖片BufferedImage dest = img.getSubimage(point.getX(), point.getY(), width, height);ImageIO.write(dest, "png", screenshot);} catch (IOException e) {e.printStackTrace();}return screenshot;}
}//調用demofunction demo(){Thread.sleep(3000);System.setProperty("webdriver.chrome.driver", "C:\\Program Files\\Google\\Chrome\\Application\\chromedriver.exe");WebDriver webDriver = new ChromeDriver();webDriver.manage().window().maximize();webDriver.manage().deleteAllCookies();// 與瀏覽器同步非常重要,必須等待瀏覽器加載完畢webDriver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);//打開目標地址webDriver.get("http://****");WebElement img = webDriver.findElement(By.id("checkcodeImg")); File ChromeFILE = ((ChromeDriver)webDriver).getScreenshotAs(OutputType.FILE);try { FileUtils.copyFile(AutoTest.captureElement(ChromeFILE,img), new File("D:\\aaa\\code.jpg"));} catch (Exception e) {e.printStackTrace(); }}
與50位技術專家面對面20年技術見證,附贈技術全景圖
總結
以上是生活随笔為你收集整理的关于selenium+java,实现部分截图功能,-针对单个元素的截图的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 对地图的marker 添加双击事件
- 下一篇: 关于获取网络流,根据网络流转byte[]