Posts

Showing posts with the label Automation testing

Real Time Automation Testing Interview Questions- Part 2- Selenium

Selenium  • What is the difference between findelement & findelements? findelement will give the first appearance of that element which matches our locator, whereas findelements will give us list of all the elements which is present over the webpage and matching our locator. And if we don’t find the element findelement will give us nosuchelementexception whereas findelements will return NULL/Empty list. • Can you tell me how you will handle multiple window in selenium. We have windowhandle & windowhandles function for handling Multiple windows. Windowhandle will give the string value of only the active window that is open whereas windowhandles will give set of all the windows that are open in browser. • How you will move from one window to another? First we will check what all windows are open by using driver.getwindowhandles, to get set of opened windows , then use iterator to iterate over each of the pages and inside for loop will check like Current URL matches with the excep

Real Time Automation Testing Interview Questions - Part 1 Java

Java Can you tell Oops concepts and relate it with your Framework? We have Polymorphism, Inheritance, Encapsulation and Abstraction in Oops. So, we will start with 1) Abstraction- Data Abstraction means to handle complexity by hiding unnecessary details from the user. In java, abstraction is achieved by interfaces and abstract classes. We can achieve 100% abstraction using interfaces. In Selenium, WebDriver itself acts as an interface. Consider the below statement: WebDriver driver = new ChromeDriver(); We initialize the Chrome Browser using Selenium Webdriver. It means we are creating a reference variable (driver) of the interface (WebDriver) and creating an Object. Here WebDriver is an Interface and ChromeDriver is a class. We can apply Abstraction in a Selenium framework by using the Page Object Model design pattern. We define all our locators and their methods in the page class. We can use these locators in our tests but we cannot see the implementation of their underlying methods.

End-to-End Testing with Cypress using Cucumber precprocessor

Image
INTRODUCTION Cypress is a next generation front end testing tool built for the modern web. It is written in  JavaScript . As of this writing, it has over 19.3K Stars on Github and is used by organizations such as NASA and DHL. With help of Cypress End to End test , integration and unit tests are easy to write and debug.  Cypress consists of a free, open source, locally installed Test Runner and a Dashboard Service for recording your tests. ARCHITECHTURE Most testing tools ( like Selenium ) operate by running outside of the browser and executing remote commands across the network. But the Cypress engine directly operates inside the browser.  It enables Cypress to listen and modify the browser behavior at run time by manipulating DOM and altering Network requests and responses on the fly. It open doors to new kind of testing along with ultimate control over your application ( front and back ).   Let’s see the difference between test execution architecture of Selenium and Cypr