org.openqa.selenium.chrome
Class ChromeDriver
java.lang.Object
org.openqa.selenium.remote.RemoteWebDriver
org.openqa.selenium.chrome.ChromeDriver
- All Implemented Interfaces:
- HasCapabilities, HasInputDevices, FindsByClassName, FindsByCssSelector, FindsById, FindsByLinkText, FindsByName, FindsByTagName, FindsByXPath, JavascriptExecutor, SearchContext, TakesScreenshot, WebDriver
public class ChromeDriver
- extends RemoteWebDriver
- implements TakesScreenshot
A WebDriver
implementation that controls a Chrome browser running on the local machine.
This class is provided as a convenience for easily testing the Chrome browser. The control server
which each instance communicates with will live and die with the instance.
To avoid unnecessarily restarting the ChromeDriver server with each instance, use a
RemoteWebDriver
coupled with the desired ChromeDriverService
, which is managed
separately. For example:
import static org.junit.Assert.assertEquals;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.runner.RunWith;
import org.junit.runners.BlockJUnit4ClassRunner
import org.openqa.selenium.chrome.ChromeDriverService;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.RemoteWebDriver;
@RunWith(BlockJUnit4ClassRunner.class)
public class ChromeTest extends TestCase {
private static ChromeDriverService service;
private WebDriver driver;
@BeforeClass
public static void createAndStartService() {
service = new ChromeDriverService.Builder()
.usingChromeDriverExecutable(new File("path/to/my/chromedriver.exe"))
.usingAnyFreePort()
.build();
service.start();
}
@AfterClass
public static void createAndStopService() {
service.stop();
}
@Before
public void createDriver() {
driver = new RemoteWebDriver(service.getUrl(),
DesiredCapabilities.chrome());
}
@After
public void quitDriver() {
driver.quit();
}
@Test
public void testGoogleSearch() {
driver.get("http://www.google.com");
WebElement searchBox = driver.findElement(By.name("q"));
searchBox.sendKeys("webdriver");
searchBox.quit();
assertEquals("webdriver - Google Search", driver.getTitle());
}
}
- See Also:
ChromeDriverService.createDefaultService()
Methods inherited from class org.openqa.selenium.remote.RemoteWebDriver |
close, execute, execute, executeAsyncScript, executeScript, findElement, findElement, findElementByClassName, findElementByCssSelector, findElementById, findElementByLinkText, findElementByName, findElementByPartialLinkText, findElementByTagName, findElementByXPath, findElements, findElements, findElementsByClassName, findElementsByCssSelector, findElementsById, findElementsByLinkText, findElementsByName, findElementsByPartialLinkText, findElementsByTagName, findElementsByXPath, get, getCapabilities, getCommandExecutor, getCurrentUrl, getElementConverter, getErrorHandler, getExecuteMethod, getFileDetector, getKeyboard, getMouse, getPageSource, getSessionId, getTitle, getWindowHandle, getWindowHandles, log, logs, manage, navigate, quit, setCommandExecutor, setElementConverter, setFileDetector, setLogLevel, startClient, startSession, stopClient, switchTo |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ChromeDriver
public ChromeDriver()
- Creates a new ChromeDriver using the
default
server configuration.
- See Also:
ChromeDriver(ChromeDriverService, Capabilities)
ChromeDriver
public ChromeDriver(ChromeDriverService service)
- Creates a new ChromeDriver instance. The
service
will be started along with the driver,
and shutdown upon calling RemoteWebDriver.quit()
.
- Parameters:
service
- The service to use.- See Also:
ChromeDriver(ChromeDriverService, Capabilities)
ChromeDriver
public ChromeDriver(Capabilities capabilities)
- Creates a new ChromeDriver instance. The
capabilities
will be passed to the
chromedriver service.
- Parameters:
capabilities
- The capabilities required from the ChromeDriver.- See Also:
ChromeDriver(ChromeDriverService, Capabilities)
ChromeDriver
public ChromeDriver(ChromeDriverService service,
Capabilities capabilities)
- Creates a new ChromeDriver instance. The
service
will be started along with the
driver, and shutdown upon calling RemoteWebDriver.quit()
.
- Parameters:
service
- The service to use.capabilities
- The capabilities required from the ChromeDriver.
getScreenshotAs
public <X> X getScreenshotAs(OutputType<X> target)
- Specified by:
getScreenshotAs
in interface TakesScreenshot
Copyright © 2011. All Rights Reserved.