Selenium WebDriver is also known as selenium 2.0. Web driver is a tool for automating web applications. The main aim of web driver is to provide a user friendly API.
1. Selenium 2.0 has many new exciting features and improvements over Selenium 1.
2. Selenium 2.0 has more API than selenium 1.0
3. The new Feature is integration of the Web driver API.
4. By this web driver API we can overcome issues in Selenium 1.0
5. The goal is to develop an object-oriented API.
6. It is faster than Selenium RC / 1.0
7. There are more ways to identify objects ()
8. No need of starting a server.
9. Page synchronization is handled automatically.
The set up of Web driver is quite similar to Selenium RC.
Prerequisites:
Jdk 1.5 or above
Eclipse 3.5 or above
Jar files: All files in selenium-java-2.X.0 folder and selenium-server-standalone-2.x.0 server file.
1. Open Eclipse.
2. File–new—Java project.
3. Enter Project Name Web Driver and click Finish.
4. A project is created.
5. Right click on JRE sys library and click buildpath—configure build path.
6. Add all external jar files (selenium-java-2.X.0 and selenium-server-standalone-2.x.0).
7. Done you are ready to write scripts using selenium webdriver.
By ID:
driver.findElement(By.id(“123”));
By Name:
driver.findElement(By.name(“username”));
By Link Text:
driver.findElement(By.linklinkText(“Sign In and Register”));
By Partial Link Text:
driver.findElement(By.partialLinkText(“Sign In”));
By CSS:
driver.findElement(By.cssSelector(“.bUserBar.LikeRealBtn”));
By XPATH:
driver.findElement(By.xpath(”//input[@class=’Page_eRadioButton’]”));
By Class Name:
driver.findElement(By.className(”Page_eRadioButton”));
By Tag Name:
driver.findElement(By.tagName(”option”));
Checkout Selenium Interview Questions
Here is the sample web driver script created using Junit.
package practice; //package name import java.util.regex.Pattern; import java.util.concurrent.TimeUnit; import org.junit.*; import static org.junit.Assert.*; import static org.hamcrest.CoreMatchers.*; import org.openqa.selenium.*; import org.openqa.selenium.firefox.FirefoxDriver; import org.openqa.selenium.support.ui.Select; public class First { private WebDriver driver; //Declaring variable @Before public void setUp() throws Exception { driver = new FirefoxDriver();//Creating firefox driver driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);//implicit time out, it is like wait for page to load in selenium rc } @TEST public void testFirst() throws Exception { //open google page in maximized mode driver.get("https://www.google.com"); //click options button driver.findElement(By.id("gbi5")).click(); //click advanced search link driver.findElement(By.id("gmlas")).click(); //type search word in text box driver.findElement(By.name("as_q")).sendKeys("test"); //select value from Dropdown new Select(driver.findElement(By.name("tbs"))).selectByVisibleText("show only basic results"); //Click advanced search button driver.findElement(By.cssSelector("input[type="submit"]")).click(); Thread.sleep(5000); } @After public void tearDown() throws Exception { //Quit the driver driver.quit(); } }
Our work-support plans provide precise options as per your project tasks. Whether you are a newbie or an experienced professional seeking assistance in completing project tasks, we are here with the following plans to meet your custom needs:
Name | Dates | |
---|---|---|
Selenium Training | Dec 24 to Jan 08 | View Details |
Selenium Training | Dec 28 to Jan 12 | View Details |
Selenium Training | Dec 31 to Jan 15 | View Details |
Selenium Training | Jan 04 to Jan 19 | View Details |
Madhuri is a Senior Content Creator at MindMajix. She has written about a range of different topics on various technologies, which include, Splunk, Tensorflow, Selenium, and CEH. She spends most of her time researching on technology, and startups. Connect with her via LinkedIn and Twitter .