Tuesday, 22 August 2017

How to handle the windows, frames and pop up in Selenium WebDriver?

In this post, I will explain that how do you handle the multiple windows, frames, and pop-up of an application using Selenium WebDriver. You generally faced these types of a problem of frames, windows, and pop-up in an application. Different tabs are also treated as different windows. In software automation, you need to tell the Selenium WebDriver that where it will search for the element. In which frame window or pop up.


So to handle this situation selenium WebDriver has native methods. I have mentioned below different ways to handle the windows, frames, and pop-up.


How to handle Frames:-

1) Select frame by element
Ex:- driver.switchTo().frame(element);
2) Select frame by id:-
Ex:- driver.switchTo().frame(id);
3) Select frame by index:-
Ex:- driver.switchTo().frame(index);
How to handle Windows:-

1) Select Window From Index
Set<String> windows = driver.getWindowHandles();
System.out.println("Window Size::" + windows.size());
String wins[] = windows.toArray(new String[windows.size()]);
driver.switchTo().window(wins[WindowCountToSwitch]);


2) Close Window From Index
                      Set<String> windows = driver.getWindowHandles();
System.out.println("Window Size::" + windows.size());
String wins[] = windows.toArray(new String[windows.size()]);
driver.switchTo().window(wins[WindowCountToSwitch]);
driver.close();
Note:- WindowCountToSwitch is the count of the window to select or delete


How to handle the Pop Up:-


1)Handle pop Up:-
                       Alert alert = driver.switchTo().alert();
alert.accept();


2)Get Alert Text:-
                      Alert alert = driver.switchTo().alert();
            String message = alert.getText();


3)check for the visibility of Alert:-
                       WebDriverWait wait = new WebDriverWait(driver, 60);
wait.until(ExpectedConditions.alertIsPresent());

Switch to Default/main window or frame:-
driver.switchTo().defaultContent();

Thank you for visiting my blog. Keep in touch.

Labels: , , , , , , , , ,

Saturday, 12 August 2017

How to create a Maven Project using Eclipse?

How to create a Maven Project using Eclipse?
Maven is a software project management, reporting manager, build, documentation and much more managing tool. I personally prefer this tool in almost every Java project. Maven supports JAVA programming language, you may not get this support for any other programming language Like RUBY. Maven provides an XML file 'pom.xml' where you can mention the dependencies of the jar files required for the software project. I will mention you the details below in steps that how easily you could do that. Do not waste much more time on the theory, you can get the theory from any other portals easily.

Prerequisite before start with selenium

1) Eclipse IDE link to download Eclipse

2) Install Java JDK How to setup java

3) Install Maven link.

3) Use Maven Dependencies of Selenium Webdriver (Described below)

Steps to Create a Maven Project:-

1) Select "Maven Project" option


2) Make sure Archetype should be maven-archetype-quickstart, usually, it is a default selected.And then also mention Group id and Artifact id of the software project and click Finish.


3) You will able to see a below structure if  Maven project created successfully.



4) As you can see in the above image that Maven project has a pom.xml file, and open structure of pom.xml is like in below image

5) You can mention the require jar file dependencies in middle of<dependencies> and </dependencies>

 6) Congratulations, Now your Maven software project is ready to do Test Automation.

Leave comments if you still face challenges 

Labels: , , , , , , , ,

Saturday, 29 April 2017

What is Automation Software Testing?

First post of mine is about Selenium importance in Automation Testing and answers for some common questions about Selenium


Nowadays, every other engineer is moving towards Software Testing. High market value of QA engineers is motivating IT engineers to learn about testing.

Software Testing has two major roles:
  1. Manual Tester
  2. Automation Tester
Higher salary desire of IT Engineers pushes them to move towards Automation Testing and it's not that difficult to learn if they want. Before going deep into Automation Testing, you should understand that Selenium is the most popular free open source automation testing tool. Anyone with just a little knowledge of any programming language can learn Selenium and earn handsome amount.
    There are way too many tutorials available on internet regarding Selenium, but a true learner just can't decide where to start from. I've got lots of queries regarding the same, so decided to give them a good start from this post.
      Before continuing, let me tell you one thing that it doesn't matter what you know and which branch of engineering you belong to. I've heard people say they are not good at any programming language, as they are from a non-technical background. My friends, don't worry about that, as Selenium and programming languages are two different things.

      While doing automation, you need to write some logic and if you also want to maintain your code, you will need some OOPS (Object Oriented Programming System) concepts.

      What do we do in Manual Testing?

            We can perform only 3 actions on any site
      1. Click
      2. Select
      3. Enter data  
      So basically we automate these actions on any given web application through Selenium.

      Now wait for my next post to know "What is Selenium?"

      Labels: , , , , ,