Skip to main content

Screenshot in Selenium Webdriver (C#)




Selenium WebDriver provides the option to capture screenshots during a test execution. This is very important when we need to investigate different failures in test cases or unexpected window popup during test execution or in some cases to track the different stages of the run. Sometimes we need the screenshots to understand at the end of long running test execution on why the test case got failed.We can save the screenshots in a local folder of our computer. In Selenium Webdriver the screen shots are taken using Screenshot class. The ITakesScreenshot interface has method called GetScreenshot() which takes screenshot of the page on the screen.

Here is the Code to take screenshot of a page.

         #region screenshots
        public class ScreenShotClass
        {
            public static string Save(IWebDriver driver, string ScreenShotFileName) 
            {
                var folderLocation = (@"");//Path of the folder to save the file

                if (!System.IO.Directory.Exists(folderLocation))
                {
                    System.IO.Directory.CreateDirectory(folderLocation);
                }

                var screenShot = ((ITakesScreenshot)driver).GetScreenshot();
                var fileName = new StringBuilder(folderLocation);

                fileName.Append(ScreenShotFileName);
                fileName.Append(DateTime.Now.ToString("_dd-mm-yyyy_mss"));
                
                fileName.Append(".jpeg");
                screenShot.SaveAsFile(fileName.ToString(), ScreenshotImageFormat.Jpeg);
                return fileName.ToString();
            }
        }
        #endregion

Comments

Popular posts from this blog

JIRA OverView

What is JIRA? JIRA is a project management tool used for issues and bugs tracking system for all types of testing.The JIRA dashboard consists of many useful functions and features which make handling of issues easy. The following points explain some interesting details of JIRA. • JIRA is an incident management tool. • JIRA is not an acronym, the name 'JIRA' comes from the Japanese word 'Gojira' • JIRA is developed by Australian Company Atlassian • JIRA is a platform independent tool; it can be used with any OS. • JIRA is multi-lingual tool − English, French, German, Japanese, Spanish, etc. • JIRA can be integrated with many other tools like GitHub, Team Foundation Software and many more. • JIRA is a commercial tool and available as a Trial version for a limited time. • To utilize JIRA services, a license is required. Features: JIRA is one the best product management tool which includes: Issue tracking & management: A software application that allows to...

Page Object Model && Page Factory

Page Object Model Design Pattern (POM): Page Object Model is a Design Pattern which has become popular in Selenium Test Automation. It is widely used design pattern in Selenium for enhancing test maintenance and reducing code duplication. In Selenium all we are doing is finding elements and filling values for those elements. For small script it’s easy to maintain . But with time test suite will grow. As we add more and more lines to our code, things become tough.The chief problem with script maintenance is that if 10 different scripts are using the same page element, with any change in that element, we need to change all 10 scripts. This is time consuming and error prone. A better approach to script maintenance is to create a separate class file which would find web elements, fill them or verify them. This class can be reused in all the scripts using that element. In future, if there is a change in the web element, we need to make the change in just 1 class file and not 1...

WebService Testing (SOAPUI Tool)

SOAPUI SoapUI is a tool which can be used for both functional and non-functional testing. SoapUI can be used to test complete RESTful API and SOAP Web Service testing. It supports Functional Testing, Performance Testing, Interoperability Testing, Regression Testing, Load Testing, and much more. SOAPUI tools are used to test webservices but SOAP is an protocol used to sending and receiving messages between web services. Following are some important features of SoapUI. 1. It is capable of performing the role of both client and service. 2. It enables the users to create functional and non-functional tests quickly and in an efficient manner using a single environment. 3. It is purely implemented using JAVA platform. 4. It supports Windows, Mac, multiple Linux dialects. 5.It allows testers to execute automated functional, regression, compliance, and load tests on different Web API. 6.It supports all the standard protocols and technologies to test all kinds of APIs. It is use...