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(); } }
Name | Dates | |
---|---|---|
Selenium Training | Nov 02 to Nov 17 | View Details |
Selenium Training | Nov 05 to Nov 20 | View Details |
Selenium Training | Nov 09 to Nov 24 | View Details |
Selenium Training | Nov 12 to Nov 27 | 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 .