zoukankan      html  css  js  c++  java
  • [Selenium+Java] How to Take Screenshot in Selenium WebDriver

    Original URL: https://www.guru99.com/take-screenshot-selenium-webdriver.html

    Screenshots are desirable for bug analysis. Selenium can automatically take screenshots during execution. You need to type cast WebDriver instance to TakesScreenshot.

    How to Take Screenshot in Selenium WebDriver

    Taking Screenshot in Selenium is a 3 Step process

    Step 1) Convert web driver object to TakeScreenshot

    TakesScreenshot scrShot =((TakesScreenshot)webdriver);

    Step 2) Call getScreenshotAs method to create image file

    File SrcFile=scrShot.getScreenshotAs(OutputType.FILE);

    Step 3) Copy file to Desired Location

    Example: In this example we will take screenshot of http://demo.guru99.com/V4/ & save it as C:/Test.png

    package Guru99TakeScreenshot;
    
    import java.io.File;
    
    import org.apache.commons.io.FileUtils;
    
    import org.openqa.selenium.OutputType;
    
    import org.openqa.selenium.TakesScreenshot;
    
    import org.openqa.selenium.WebDriver;
    
    import org.openqa.selenium.firefox.FirefoxDriver;
    
    import org.testng.annotations.Test;
    
    public class Guru99TakeScreenshot {
    
        @Test
    
        public void testGuru99TakeScreenShot() throws Exception{
    
    		WebDriver driver ;
        	System.setProperty("webdriver.firefox.marionette","C:\geckodriver.exe");
        	driver = new FirefoxDriver();
    
            //goto url
    
            driver.get("http://demo.guru99.com/V4/");
    
            //Call take screenshot function
    
            this.takeSnapShot(driver, "c://test.png") ;     
    
        }
    
        /**
    
         * This function will take screenshot
    
         * @param webdriver
    
         * @param fileWithPath
    
         * @throws Exception
    
         */
    
        public static void takeSnapShot(WebDriver webdriver,String fileWithPath) throws Exception{
    
            //Convert web driver object to TakeScreenshot
    
            TakesScreenshot scrShot =((TakesScreenshot)webdriver);
    
            //Call getScreenshotAs method to create image file
    
                    File SrcFile=scrShot.getScreenshotAs(OutputType.FILE);
    
                //Move image file to new destination
    
                    File DestFile=new File(fileWithPath);
    
                    //Copy file at destination
    
                    FileUtils.copyFile(SrcFile, DestFile);
    
        }
    
    }
  • 相关阅读:
    window执行python文件
    百钱买百鸡
    牛的数量有多少
    如何实现杨辉三角
    怎样求解斐波那契数列
    php快速做外包后台开源产品
    如何实现洗牌算法
    如何获取规定的排列组合
    怎样才能得到阿姆斯壮数
    如何利用约瑟夫环来保护你与你的朋友
  • 原文地址:https://www.cnblogs.com/alicegu2009/p/9083009.html
Copyright © 2011-2022 走看看