ИНТЕРФЕЙС WEBDRIVER
Интерфейс WebDriver ChromeDriver ChromeDriverService |
System.setproperty(ключ, значение) |
драйвер chromedriver gecko msedgedriver phantomjs |
Драйвер WebDriver; ChromeDriver(); FirefoxDriver(); |
записи
Все классы, специфичные для браузера ( ChromeDriver , FirefoxDriver и т.д.), реализовали общий интерфейс, называемый WebDriver interface. информация
- Интерфейс WebDriver содержит часто используемые методы автоматизации браузера.
Экс:
Методы WebDriver
закрыть() | пустота |
findElement(По by) | Веб-элемент |
Элементы поиска(By by) | java.util. Список |
get(java.lang. Строковый URL-адрес) | пустота |
getTitle() | java.lang. Строка |
Подлежит определению | Подлежит определению |
- Мы можем создать другой объект браузера, используя тот же тип объекта WebDriver.
Экс:
Драйвер WebDriver;
драйвер ChromeDriver();
драйвер FirefoxDriver();
package io.webdriver.chrome; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.chrome.ChromeDriverService; import org.openqa.selenium.edge.EdgeDriver; import org.openqa.selenium.edge.EdgeDriverService; import org.openqa.selenium.firefox.FirefoxDriver; import org.openqa.selenium.firefox.GeckoDriverService; import org.openqa.selenium.phantomjs.PhantomJSDriver; import org.openqa.selenium.phantomjs.PhantomJSDriverService; import java.io.File; public class WebDriverInterface { public static void main(String[] args) { WebDriver driver; System.setProperty(ChromeDriverService.CHROME_DRIVER_EXE_PROPERTY, getDriver("chromedriver").getAbsolutePath()); System.setProperty(GeckoDriverService.GECKO_DRIVER_EXE_PROPERTY, getDriver("geckodriver").getAbsolutePath()); System.setProperty(EdgeDriverService.EDGE_DRIVER_EXE_PROPERTY, getDriver("msedgedriver").getAbsolutePath()); System.setProperty(PhantomJSDriverService.PHANTOMJS_EXECUTABLE_PATH_PROPERTY, getDriver("phantomjs").getAbsolutePath()); driver = new ChromeDriver(); System.out.println(driver.toString()); driver.quit(); driver = new FirefoxDriver(); System.out.println(driver.toString()); driver.quit(); driver = new EdgeDriver(); System.out.println(driver.toString()); driver.quit(); driver = new PhantomJSDriver(); System.out.println(driver.toString()); driver.quit(); } /** * Based on the OS, we get browser driver location. * * @param driverName a string. ex: "chromedriver" * @return the relative (partial) path of the driver. ex: driver/chromedriver */ private static File getDriver(String driverName) { if (System.getProperty("os.name").contains("Mac OS X")) { return new File(new File("driver"), driverName); } else { return new File(new File("driver"), driverName + ".exe"); } } }
ChromeDriver: chrome on WINDOWS (24a35fb050dc5e8d46ba8c0eede0eb1f) FirefoxDriver: firefox on WINDOWS (413c13b1-7984-41e4-a7cc-a31b85438e71) EdgeDriver: msedge on WINDOWS (83af823aa10d801182ad9726e3ed911b) PhantomJSDriver: phantomjs on XP (01d457b0-7114-11eb-a16e-d3a30713c1eb)
WebDriver – это интерфейс. |
Классы ChromeDriver, FirefoxDriver и т.д. реализовали интерфейс WebDriver. |
WebDriver имеет общие методы для всех браузеров. Например: get(), getTitle(), findElement() и т.Д |
Оригинал: “https://dev.to/jagadeeshshetty/why-selenium-webdriver-is-an-interface-1eea”