sandeshp7

imageCompareTest.java

Aug 2nd, 2017
128
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.19 KB | None | 0 0
  1. package imageCompare;
  2.  
  3. import java.awt.Color;
  4. import java.awt.image.BufferedImage;
  5. import java.io.File;
  6. import java.io.IOException;
  7.  
  8. import javax.imageio.ImageIO;
  9.  
  10. import org.openqa.selenium.OutputType;
  11. import org.openqa.selenium.TakesScreenshot;
  12. import org.openqa.selenium.WebDriver;
  13. import org.openqa.selenium.chrome.ChromeDriver;
  14.  
  15.  
  16. public class ImageCompareTest {
  17.    
  18.     //Set to true if running the tests to capture the baseline images
  19.     private static boolean isBaseline = false;
  20.    
  21.     public static void main(String[] args) {
  22.        
  23.         WebDriver driver = new ChromeDriver();
  24.         driver.get("https://www.google.co.uk/");
  25.        
  26.         String imageFileName = "TestImage";
  27.         String userDirectory = System.getProperty("user.dir");
  28.        
  29.         if(isBaseline) {
  30.             imageFileName = "BaseLineImage";
  31.         }
  32.         //This takes the screenshot
  33.        
  34.         try {
  35.             Thread.sleep(3000);
  36.             File scrFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);
  37.             //By default the image with be a png. We need to convert it to jpeg
  38.             BufferedImage bufferedImage = ImageIO.read(scrFile);
  39.  
  40.             // create a blank, RGB, same width and height, and a white background
  41.             BufferedImage newBufferedImage = new BufferedImage(bufferedImage.getWidth(),
  42.                     bufferedImage.getHeight(), BufferedImage.TYPE_INT_RGB);
  43.             newBufferedImage.createGraphics().drawImage(bufferedImage, 0, 0, Color.WHITE, null);
  44.  
  45.             // write to jpeg file
  46.             ImageIO.write(newBufferedImage, "jpg", new File(userDirectory + "/Screenshots/"+ imageFileName +".jpg"));
  47.         } catch (IOException e) {
  48.             // TODO Auto-generated catch block
  49.             e.printStackTrace();
  50.         } catch (InterruptedException e) {
  51.             // TODO Auto-generated catch block
  52.             e.printStackTrace();
  53.         } finally {
  54.             driver.quit();
  55.         }
  56.        
  57.         if(!isBaseline) {
  58.             ImageCompare ic = new ImageCompare(userDirectory + "/Screenshots/" + "BaseLineImage.jpg", userDirectory + "/Screenshots/" + "TestImage.jpg");
  59.             Boolean result = ic.compareImages();
  60.             if(result) {
  61.                 System.out.println("Test Pass - No Differences");
  62.             } else {
  63.                 System.out.println("Test Fail - There are some differences. Refer changes.jpg in the Changes folder");
  64.             }
  65.         }
  66.     }
  67. }
Add Comment
Please, Sign In to add comment