您的位置:首页 > 其它

Introducing the Selenium-WebDriver API by Example

2014-03-04 15:33 453 查看
WebDriver is a tool for automating web application testing, and in particularto verify that they work as expected. It aims to provide a friendly API that’seasy to explore and understand, easier to use than the Selenium-RC (1.0)
API,which will help to make your tests easier toread and maintain. It’s not tied to any particular test framework, so it canbe used equally well in a unit testing or from a plain old “main” method.This section introduces WebDriver’s API and helps get you started
becomingfamiliar with it. Start by setting up a WebDriver project if you haven’t already.This was described in the previous section,Setting
Up a Selenium-WebDriver Project.

Once your project is set up, you can see that WebDriver acts just as any normal library:it is entirely self-contained, and you usually don’t need to remember to start anyadditional processes or run any installers before using
it, as opposed to the proxy serverwith Selenium-RC.

Note: additional steps are required to use
Chrome Driver,
Opera Driver,
Android Driverand
iOS Driver

You’re now ready to write some code. An easy way to get started is thisexample, which searches for the term “Cheese” on Google and then outputs theresult page’s title to the console.

package org.openqa.selenium.example;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.support.ui.ExpectedCondition;
import org.openqa.selenium.support.ui.WebDriverWait;

public class Selenium2Example  {
public static void main(String[] args) {
// Create a new instance of the Firefox driver
// Notice that the remainder of the code relies on the interface,
// not the implementation.
WebDriver driver = new FirefoxDriver();

// And now use this to visit Google
driver.get("http://www.google.com");
// Alternatively the same thing can be done like this
// driver.navigate().to("http://www.google.com");

// Find the text input element by its name
WebElement element = driver.findElement(By.name("q"));

// Enter something to search for
element.sendKeys("Cheese!");

// Now submit the form. WebDriver will find the form for us from the element
element.submit();

// Check the title of the page
System.out.println("Page title is: " + driver.getTitle());

// Google's search is rendered dynamically with JavaScript.
// Wait for the page to load, timeout after 10 seconds
(new WebDriverWait(driver, 10)).until(new ExpectedCondition<Boolean>() {
public Boolean apply(WebDriver d) {
return d.getTitle().toLowerCase().startsWith("cheese!");
}
});

// Should see: "cheese! - Google Search"
System.out.println("Page title is: " + driver.getTitle());

//Close the browser
driver.quit();
}
}


In upcoming sections, you will learn more about how to use WebDriver for thingssuch as navigating forward and backward in your browser’s history, and how totest web sites that use frames and windows. We also provide a morethorough
discussions and examples.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: