2013-06-29 140 views
0

我想分享代碼來捕獲所有標籤中硒的屏幕截圖的webdriver使用webdriver捕獲圖像的解決方案。有沒有人有更好的解決方案?

  1. 得到所有<img>標籤列表

    List<WebElement> image = driver.findElements(By.tagName("img")); 
    int i=1; 
    
  2. 使用此:

    for(WebElement allImages : image){ 
    
        //Download image 
        File screen=((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE); 
        int width=allImages.getSize().getWidth(); 
        int height=allImages.getSize().getHeight(); 
        BufferedImage img=ImageIO.read(screen); 
        BufferedImage dest=img.getSubimage(allImages.getLocation().getX(), allImages.getLocation().getY(), width, height); 
        ImageIO.write(dest, "png", screen); 
        File file=new File("/Users/h-disk/Desktop/folder-name/abc"+i+".png"); 
    

使用此代碼你可以捕獲所有<img>小號

+0

這是爲測試人員社區的最佳解決方案,其已經從開發驗證,其超過OK。 如果你有什麼更好的主意,那麼歡迎。 – bugCracker

+0

這段代碼有多好並不重要,這不是問題。 – Doorknob

回答

1

您可以使用諸如加利奧或RobotFramework框架,以改善這一過程

相關問題