Best Selenium code snippet using org.openqa.selenium.remote.RemoteWebDriver.get
Source:NLPerfectoWebDriver.java
...81 remoteWebDriver.setFileDetector(detector);82 }83 /**84 * @return85 * @see org.openqa.selenium.remote.RemoteWebDriver#getSessionId()86 */87 @Override88 public SessionId getSessionId() {89 return wrapperUtils.wrapIfNecessary(webDriver, remoteWebDriver.getSessionId());90 }91 /**92 * @return93 * @see org.openqa.selenium.remote.RemoteWebDriver#getErrorHandler()94 */95 @Override96 public ErrorHandler getErrorHandler() {97 return wrapperUtils.wrapIfNecessary(webDriver, remoteWebDriver.getErrorHandler());98 }99 /**100 * @param handler101 * @see org.openqa.selenium.remote.RemoteWebDriver#setErrorHandler(org.openqa.selenium.remote.ErrorHandler)102 */103 @Override104 public void setErrorHandler(ErrorHandler handler) {105 remoteWebDriver.setErrorHandler(handler);106 }107 /**108 * @return109 * @see org.openqa.selenium.remote.RemoteWebDriver#getCommandExecutor()110 */111 @Override112 public CommandExecutor getCommandExecutor() {113 return wrapperUtils.wrapIfNecessary(webDriver, remoteWebDriver.getCommandExecutor());114 }115 /**116 * @return117 * @see org.openqa.selenium.remote.RemoteWebDriver#getCapabilities()118 */119 @Override120 public Capabilities getCapabilities() {121 return wrapperUtils.wrapIfNecessary(webDriver, remoteWebDriver.getCapabilities());122 }123 /**124 * @param url125 * @see org.openqa.selenium.remote.RemoteWebDriver#get(java.lang.String)126 */127 @Override128 public void get(String url) {129 webDriver.get(url);130 }131 /**132 * @return133 * @see org.openqa.selenium.remote.RemoteWebDriver#getTitle()134 */135 @Override136 public String getTitle() {137 return webDriver.getTitle();138 }139 /**140 * @return141 * @see org.openqa.selenium.remote.RemoteWebDriver#getCurrentUrl()142 */143 @Override144 public String getCurrentUrl() {145 return webDriver.getCurrentUrl();146 }147 /**148 * @param outputType149 * @return150 * @throws WebDriverException151 * @see org.openqa.selenium.remote.RemoteWebDriver#getScreenshotAs(org.openqa.selenium.OutputType)152 */153 @Override154 public <X> X getScreenshotAs(OutputType<X> outputType) throws WebDriverException {155 return wrapperUtils.wrapIfNecessary(webDriver, remoteWebDriver.getScreenshotAs(outputType));156 }157 /**158 * @param by159 * @return160 * @see org.openqa.selenium.remote.RemoteWebDriver#findElements(org.openqa.selenium.By)161 */162 @Override163 public List<WebElement> findElements(By by) {164 return webDriver.findElements(by);165 }166 /**167 * @param by168 * @return169 * @see org.openqa.selenium.remote.RemoteWebDriver#findElement(org.openqa.selenium.By)170 */171 @Override172 public WebElement findElement(By by) {173 return webDriver.findElement(by);174 }175 /**176 * @param using177 * @return178 * @see org.openqa.selenium.remote.RemoteWebDriver#findElementById(java.lang.String)179 */180 @Override181 public WebElement findElementById(String using) {182 return webDriver.findElement(By.id(using));183 }184 /**185 * @param using186 * @return187 * @see org.openqa.selenium.remote.RemoteWebDriver#findElementsById(java.lang.String)188 */189 @Override190 public List<WebElement> findElementsById(String using) {191 return webDriver.findElements(By.id(using));192 }193 /**194 * @param using195 * @return196 * @see org.openqa.selenium.remote.RemoteWebDriver#findElementByLinkText(java.lang.String)197 */198 @Override199 public WebElement findElementByLinkText(String using) {200 return webDriver.findElement(By.linkText(using));201 }202 /**203 * @param using204 * @return205 * @see org.openqa.selenium.remote.RemoteWebDriver#findElementsByLinkText(java.lang.String)206 */207 @Override208 public List<WebElement> findElementsByLinkText(String using) {209 return webDriver.findElements(By.linkText(using));210 }211 /**212 * @param using213 * @return214 * @see org.openqa.selenium.remote.RemoteWebDriver#findElementByPartialLinkText(java.lang.String)215 */216 @Override217 public WebElement findElementByPartialLinkText(String using) {218 return webDriver.findElement(By.partialLinkText(using));219 }220 /**221 * @param using222 * @return223 * @see org.openqa.selenium.remote.RemoteWebDriver#findElementsByPartialLinkText(java.lang.String)224 */225 @Override226 public List<WebElement> findElementsByPartialLinkText(String using) {227 return webDriver.findElements(By.partialLinkText(using));228 }229 /**230 * @param using231 * @return232 * @see org.openqa.selenium.remote.RemoteWebDriver#findElementByTagName(java.lang.String)233 */234 @Override235 public WebElement findElementByTagName(String using) {236 return webDriver.findElement(By.tagName(using));237 }238 /**239 * @param using240 * @return241 * @see org.openqa.selenium.remote.RemoteWebDriver#findElementsByTagName(java.lang.String)242 */243 @Override244 public List<WebElement> findElementsByTagName(String using) {245 return webDriver.findElements(By.tagName(using));246 }247 /**248 * @param using249 * @return250 * @see org.openqa.selenium.remote.RemoteWebDriver#findElementByName(java.lang.String)251 */252 @Override253 public WebElement findElementByName(String using) {254 return webDriver.findElement(By.name(using));255 }256 /**257 * @param using258 * @return259 * @see org.openqa.selenium.remote.RemoteWebDriver#findElementsByName(java.lang.String)260 */261 @Override262 public List<WebElement> findElementsByName(String using) {263 return webDriver.findElements(By.name(using));264 }265 /**266 * @param using267 * @return268 * @see org.openqa.selenium.remote.RemoteWebDriver#findElementByClassName(java.lang.String)269 */270 @Override271 public WebElement findElementByClassName(String using) {272 return webDriver.findElement(By.className(using));273 }274 /**275 * @param using276 * @return277 * @see org.openqa.selenium.remote.RemoteWebDriver#findElementsByClassName(java.lang.String)278 */279 @Override280 public List<WebElement> findElementsByClassName(String using) {281 return webDriver.findElements(By.className(using));282 }283 /**284 * @param using285 * @return286 * @see org.openqa.selenium.remote.RemoteWebDriver#findElementByCssSelector(java.lang.String)287 */288 @Override289 public WebElement findElementByCssSelector(String using) {290 return webDriver.findElement(By.cssSelector(using));291 }292 /**293 * @param using294 * @return295 * @see org.openqa.selenium.remote.RemoteWebDriver#findElementsByCssSelector(java.lang.String)296 */297 @Override298 public List<WebElement> findElementsByCssSelector(String using) {299 return webDriver.findElements(By.cssSelector(using));300 }301 /**302 * @param using303 * @return304 * @see org.openqa.selenium.remote.RemoteWebDriver#findElementByXPath(java.lang.String)305 */306 @Override307 public WebElement findElementByXPath(String using) {308 return webDriver.findElement(By.xpath(using));309 }310 /**311 * @param using312 * @return313 * @see org.openqa.selenium.remote.RemoteWebDriver#findElementsByXPath(java.lang.String)314 */315 @Override316 public List<WebElement> findElementsByXPath(String using) {317 return webDriver.findElements(By.xpath(using));318 }319 /**320 * @return321 * @see org.openqa.selenium.remote.RemoteWebDriver#getPageSource()322 */323 @Override324 public String getPageSource() {325 return webDriver.getPageSource();326 }327 /**328 * 329 * @see org.openqa.selenium.remote.RemoteWebDriver#close()330 */331 @Override332 public void close() {333 webDriver.close();334 }335 /**336 * 337 * @see org.openqa.selenium.remote.RemoteWebDriver#quit()338 */339 @Override340 public void quit() {341 webDriver.quit();342 }343 /**344 * @return345 * @see org.openqa.selenium.remote.RemoteWebDriver#getWindowHandles()346 */347 @Override348 public Set<String> getWindowHandles() {349 return webDriver.getWindowHandles();350 }351 /**352 * @return353 * @see org.openqa.selenium.remote.RemoteWebDriver#getWindowHandle()354 */355 @Override356 public String getWindowHandle() {357 return webDriver.getWindowHandle();358 }359 /**360 * @param script361 * @param args362 * @return363 * @see org.openqa.selenium.remote.RemoteWebDriver#executeScript(java.lang.String, java.lang.Object[])364 */365 @Override366 public Object executeScript(String script, Object... args) {367 return wrapperUtils.wrapIfNecessary(webDriver, remoteWebDriver.executeScript(script, args));368 }369 /**370 * @param script371 * @param args372 * @return373 * @see org.openqa.selenium.remote.RemoteWebDriver#executeAsyncScript(java.lang.String, java.lang.Object[])374 */375 @Override376 public Object executeAsyncScript(String script, Object... args) {377 return wrapperUtils.wrapIfNecessary(webDriver, remoteWebDriver.executeAsyncScript(script, args));378 }379 /**380 * @return381 * @see org.openqa.selenium.remote.RemoteWebDriver#switchTo()382 */383 @Override384 public TargetLocator switchTo() {385 return webDriver.switchTo();386 }387 /**388 * @return389 * @see org.openqa.selenium.remote.RemoteWebDriver#navigate()390 */391 @Override392 public Navigation navigate() {393 return webDriver.navigate();394 }395 /**396 * @return397 * @see org.openqa.selenium.remote.RemoteWebDriver#manage()398 */399 @Override400 public Options manage() {401 return webDriver.manage();402 }403 /**404 * @param level405 * @see org.openqa.selenium.remote.RemoteWebDriver#setLogLevel(java.util.logging.Level)406 */407 @Override408 public void setLogLevel(Level level) {409 remoteWebDriver.setLogLevel(level);410 }411 /**412 * @return413 * @see org.openqa.selenium.remote.RemoteWebDriver#getKeyboard()414 */415 @Override416 public Keyboard getKeyboard() {417 return wrapperUtils.wrapIfNecessary(webDriver, remoteWebDriver.getKeyboard());418 }419 /**420 * @return421 * @see org.openqa.selenium.remote.RemoteWebDriver#getMouse()422 */423 @Override424 public Mouse getMouse() {425 return wrapperUtils.wrapIfNecessary(webDriver, remoteWebDriver.getMouse());426 }427 /**428 * @return429 * @see org.openqa.selenium.remote.RemoteWebDriver#getFileDetector()430 */431 @Override432 public FileDetector getFileDetector() {433 return wrapperUtils.wrapIfNecessary(webDriver, remoteWebDriver.getFileDetector());434 }435 /**436 * @return437 * @see org.openqa.selenium.remote.RemoteWebDriver#toString()438 */439 @Override440 public String toString() {441 return webDriver.toString();442 }443 @Override444 public void startTransaction(final String name) {445 webDriver.startTransaction(name);446 }447 @Override448 public void stopTransaction() {449 webDriver.stopTransaction();450 }451 @Override452 public void setCustomName(final String name) {453 webDriver.setCustomName(name);454 }455 @Override456 public String getRegexToCleanURLs() {457 return webDriver.getRegexToCleanURLs();458 }459}...
Source:Augmenter.java
...128129 CompoundHandler handler = determineAugmentation(driver, augmentors);130 RemoteWebDriver remote = create(handler, (RemoteWebDriver) driver);131132 copyFields(driver.getClass(), driver, remote);133134 return remote;135 }136137 private void copyFields(Class<?> clazz, Object source, Object target) {138 if (Object.class.equals(clazz)) {139 // Stop!140 return;141 }142143 for (Field field : clazz.getDeclaredFields()) {144 copyField(source, target, field);145 }146147 copyFields(clazz.getSuperclass(), source, target);148 }149150 private void copyField(Object source, Object target, Field field) {151 try {152 field.setAccessible(true);153 Object value = field.get(source);154 field.set(target, value);155 } catch (IllegalAccessException e) {156 throw Throwables.propagate(e);157 }158 }159160 /**161 * Enhance the interfaces implemented by this instance of WebElement iff that162 * instance is a {@link org.openqa.selenium.remote.RemoteWebElement}.163 *164 * The WebElement that is returned may well be a dynamic proxy. You cannot165 * rely on the concrete implementing class to remain constant.166 *167 * @param element The driver to enhance.168 * @return A class implementing the described interfaces.169 */170 public WebElement augment(RemoteWebElement element) {171 // TODO(simon): We should really add a "SelfDescribing" interface for this172 RemoteWebDriver parent = (RemoteWebDriver) element.getWrappedDriver();173 if (parent == null) {174 return element;175 }176 Map<String, AugmenterProvider> augmentors = elementAugmentors;177178 CompoundHandler handler = determineAugmentation(parent, augmentors);179 RemoteWebElement remote = create(handler, element);180181 copyFields(element.getClass(), element, remote);182183 remote.setId(element.getId());184 remote.setParent(parent);185186 return remote;187 }188189 private CompoundHandler determineAugmentation(WebDriver driver, Map<String, AugmenterProvider> augmentors) {190 Map<String, ?> capabilities = ((RemoteWebDriver) driver).getCapabilities().asMap();191192 CompoundHandler handler = new CompoundHandler((RemoteWebDriver) driver);193194 for (Map.Entry<String, ?> capablityName : capabilities.entrySet()) {195 AugmenterProvider augmenter = augmentors.get(capablityName.getKey());196 if (augmenter == null) {197 continue;198 }199200 Object value = capablityName.getValue();201 if (value instanceof Boolean && !((Boolean) value).booleanValue()) {202 continue;203 }204205 handler.addCapabilityHander(augmenter.getDescribedInterface(),206 augmenter.getImplementation(value));207 }208 return handler;209 }210211 @SuppressWarnings({"unchecked"})212 protected <X> X create(CompoundHandler handler, X from) {213 if (handler.isNeedingApplication()) {214 Enhancer enhancer = new Enhancer();215 enhancer.setCallback(handler);216 enhancer.setSuperclass(from.getClass());217218 Set<Class<?>> interfaces = Sets.newHashSet();219 interfaces.addAll(handler.getInterfaces());220 enhancer.setInterfaces(interfaces.toArray(new Class<?>[interfaces.size()]));221222 return (X) enhancer.create();223 }224225 return from;226 }227228 private class CompoundHandler implements MethodInterceptor {229 private Map<Method, InterfaceImplementation> handlers =230 new HashMap<Method, InterfaceImplementation>();231 private Set<Class<?>> interfaces = new HashSet<Class<?>>();232 private final RemoteWebDriver driver;233234 private CompoundHandler(RemoteWebDriver driver) {235 this.driver = driver;236 }237238 public void addCapabilityHander(Class<?> fromInterface, InterfaceImplementation handledBy) {239 interfaces.add(fromInterface);240 for (Method method : fromInterface.getDeclaredMethods()) {241 handlers.put(method, handledBy);242 }243 }244245 public Set<Class<?>> getInterfaces() {246 return interfaces;247 }248249 public boolean isNeedingApplication() {250 return interfaces.size() > 0;251 }252253 public Object intercept(Object self, Method method, Object[] args, MethodProxy methodProxy) throws Throwable {254 InterfaceImplementation handler = handlers.get(method);255256 if (handler == null) {257 return methodProxy.invokeSuper(self, args);258 }259260 return handler.invoke(new ExecuteMethod(driver), self, method, args);261 }262 }263}
...
Source:ChromeDriver.java
...72 * }73 *74 * {@literal @Before}75 * public void createDriver() {76 * driver = new RemoteWebDriver(service.getUrl(),77 * DesiredCapabilities.chrome());78 * }79 *80 * {@literal @After}81 * public void quitDriver() {82 * driver.quit();83 * }84 *85 * {@literal @Test}86 * public void testGoogleSearch() {87 * driver.get("http://www.google.com");88 * WebElement searchBox = driver.findElement(By.name("q"));89 * searchBox.sendKeys("webdriver");90 * searchBox.quit();91 * assertEquals("webdriver - Google Search", driver.getTitle());92 * }93 * }94 * }</pre>95 *96 * Note that unlike ChromeDriver, RemoteWebDriver doesn't directly implement97 * role interfaces such as {@link LocationContext} and {@link WebStorage}.98 * Therefore, to access that functionality, it needs to be99 * {@link org.openqa.selenium.remote.Augmenter augmented} and then cast100 * to the appropriate interface.101 *102 * @see ChromeDriverService#createDefaultService103 */104public class ChromeDriver extends RemoteWebDriver105 implements LocationContext, WebStorage, HasTouchScreen, NetworkConnection {106 private RemoteLocationContext locationContext;107 private RemoteWebStorage webStorage;108 private TouchScreen touchScreen;109 private RemoteNetworkConnection networkConnection;110 /**111 * Creates a new ChromeDriver using the {@link ChromeDriverService#createDefaultService default}112 * server configuration.113 *114 * @see #ChromeDriver(ChromeDriverService, ChromeOptions)115 */116 public ChromeDriver() {117 this(ChromeDriverService.createDefaultService(), new ChromeOptions());118 }119 /**120 * Creates a new ChromeDriver instance. The {@code service} will be started along with the driver,121 * and shutdown upon calling {@link #quit()}.122 *123 * @param service The service to use.124 * @see RemoteWebDriver#RemoteWebDriver(org.openqa.selenium.remote.CommandExecutor, Capabilities)125 * @deprecated Use {@link RemoteWebDriver#RemoteWebDriver(org.openqa.selenium.remote.CommandExecutor, Capabilities)}126 */127 @Deprecated128 public ChromeDriver(ChromeDriverService service) {129 this(service, new ChromeOptions());130 }131 /**132 * Creates a new ChromeDriver instance. The {@code capabilities} will be passed to the133 * chromedriver service.134 *135 * @param capabilities The capabilities required from the ChromeDriver.136 * @see #ChromeDriver(ChromeDriverService, Capabilities)137 */138 public ChromeDriver(Capabilities capabilities) {139 this(ChromeDriverService.createDefaultService(), capabilities);140 }141 /**142 * Creates a new ChromeDriver instance with the specified options.143 *144 * @param options The options to use.145 * @see #ChromeDriver(ChromeDriverService, ChromeOptions)146 */147 public ChromeDriver(ChromeOptions options) {148 this(ChromeDriverService.createDefaultService(), options);149 }150 /**151 * Creates a new ChromeDriver instance with the specified options. The {@code service} will be152 * started along with the driver, and shutdown upon calling {@link #quit()}.153 *154 * @param service The service to use.155 * @param options The options to use.156 * @deprecated Use {@link RemoteWebDriver#RemoteWebDriver(org.openqa.selenium.remote.CommandExecutor, Capabilities)}157 */158 @Deprecated159 public ChromeDriver(ChromeDriverService service, ChromeOptions options) {160 this(service, options.toCapabilities());161 }162 /**163 * Creates a new ChromeDriver instance. The {@code service} will be started along with the164 * driver, and shutdown upon calling {@link #quit()}.165 *166 * @param service The service to use.167 * @param capabilities The capabilities required from the ChromeDriver.168 * @deprecated Use {@link RemoteWebDriver#RemoteWebDriver(org.openqa.selenium.remote.CommandExecutor, Capabilities)}169 */170 @Deprecated171 public ChromeDriver(ChromeDriverService service, Capabilities capabilities) {172 super(new ChromeDriverCommandExecutor(service), capabilities);173 locationContext = new RemoteLocationContext(getExecuteMethod());174 webStorage = new RemoteWebStorage(getExecuteMethod());175 touchScreen = new RemoteTouchScreen(getExecuteMethod());176 networkConnection = new RemoteNetworkConnection(getExecuteMethod());177 }178 @Override179 public void setFileDetector(FileDetector detector) {180 throw new WebDriverException(181 "Setting the file detector only works on remote webdriver instances obtained " +182 "via RemoteWebDriver");183 }184 @Override185 public LocalStorage getLocalStorage() {186 return webStorage.getLocalStorage();187 }188 @Override189 public SessionStorage getSessionStorage() {190 return webStorage.getSessionStorage();191 }192 @Override193 public Location location() {194 return locationContext.location();195 }196 @Override197 public void setLocation(Location location) {198 locationContext.setLocation(location);199 }200 @Override201 public TouchScreen getTouch() {202 return touchScreen;203 }204 @Override205 public ConnectionType getNetworkConnection() {206 return networkConnection.getNetworkConnection();207 }208 @Override209 public ConnectionType setNetworkConnection(ConnectionType type) {210 return networkConnection.setNetworkConnection(type);211 }212 /**213 * Launches Chrome app specified by id.214 *215 * @param id chrome app id216 */217 public void launchApp(String id) {218 execute(ChromeDriverCommand.LAUNCH_APP, ImmutableMap.of("id", id));219 }220 ...
Source:BaseAugmenter.java
...108 * @return A class implementing the described interfaces.109 */110 public WebElement augment(RemoteWebElement element) {111 // TODO(simon): We should really add a "SelfDescribing" interface for this112 RemoteWebDriver parent = (RemoteWebDriver) element.getWrappedDriver();113 if (parent == null) {114 return element;115 }116 return create(parent, elementAugmentors, element);117 }118 /**119 * Subclasses should perform the requested augmentation.120 *121 * @param <X> typically a RemoteWebDriver or RemoteWebElement122 * @param augmentors augumentors to augment the object123 * @param driver RWD instance124 * @param objectToAugment object to augment125 * @return an augmented version of objectToAugment.126 */...
Source:RemoteWebDriverExtended.java
...28 * @param desiredCapabilities29 */30 public RemoteWebDriverExtended(URL remoteAddress, Capabilities desiredCapabilities) {31 super(remoteAddress, desiredCapabilities);32 allCapabilities = super.getCapabilities();33 }34 public void setAllCapabilities(Capabilities caps) {35 allCapabilities = caps;36 }37 /*38 * (non-Javadoc)39 * 40 * @see org.openqa.selenium.remote.RemoteWebDriver#getCapabilities()41 */42 @Override43 public Capabilities getCapabilities() {44 return allCapabilities;45 }46 /*47 * (non-Javadoc)48 * 49 * @see org.openqa.selenium.remote.RemoteWebDriver#executeScript(java.lang.50 * String, java.lang.Object[])51 */52 @Override53 public Object executeScript(String script, Object... args) {54 String params = StringUtils.join(Lists.newArrayList(args), "\n");55 return super.executeScript(script, args);56 }57 /*58 * (non-Javadoc)59 * 60 * @see org.openqa.selenium.remote.RemoteWebDriver#get(java.lang.String)61 */62 @Override63 public void get(String url) {64 super.get(url);65 }66 /*67 * (non-Javadoc)68 * 69 * @see org.openqa.selenium.remote.RemoteWebDriver#findElement(org.openqa.70 * selenium.By)71 */72 @Override73 public WebElement findElement(By by) {74 StopWatch timer = new StopWatch();75 timer.start();76 try {77 WebElement element = super.findElement(by);78 return element;79 } catch (Exception e) {80 throw e;81 }82 }83 private String getTimerString(StopWatch timer) {84 return "(" + TimeUnit.SECONDS.convert(timer.getNanoTime(), TimeUnit.NANOSECONDS) + "s) ";85 }86 @Override87 protected WebElement findElement(String by, String using) {88 List<WebElement> allElements = findElements(by, using);89 if (allElements == null || allElements.isEmpty())90 throw new NoSuchElementException("Cannot locate an element using " + toString());91 return allElements.get(0);92 }93 /**94 * Switch the {@link RemoteWebDriver} driver context. A list with possible95 * contexts can be generated by the96 * {@link #getCurrentContextHandle(RemoteWebDriver)} method. To check the97 * current context, use the98 * {@link #getCurrentContextHandle(RemoteWebDriver)} method.99 * 100 * @param driver101 * The context of the passed driver will be changed102 * @param context103 * The context to change to104 */105 public boolean switchToContext(Context context) {106 try {107 RemoteExecuteMethod executeMethod = new RemoteExecuteMethod(this);108 Map<String, String> params = new HashMap<String, String>();109 params.put("name", context.name());110 executeMethod.execute(DriverCommand.SWITCH_TO_CONTEXT, params);111 return true;112 } catch (Exception e) {113 logThread("Could not switch context");114 }115 return false;116 }117 /**118 * Gets the {@link String} value of the current context of the driver. In119 * order to change the current context, use the120 * {@link #switchToContext(RemoteWebDriver, String)} method.121 * 122 * @param driver123 * The driver to get the context from.124 * @return {@link String} value of the current context.125 */126 public Context getCurrentContextHandle() {127 try {128 RemoteExecuteMethod executeMethod = new RemoteExecuteMethod(this);129 String context = (String) executeMethod.execute(DriverCommand.GET_CURRENT_CONTEXT_HANDLE, null);130 if (context.toLowerCase().contains("webview"))131 return Context.WEBVIEW;132 else if (context.toLowerCase().contains("native"))133 return Context.NATIVE_APP;134 else if (context.toLowerCase().contains("visual"))135 return Context.VISUAL;136 } catch (Exception e) {137 logThread("Could not get context!");138 }139 return Context.WEBVIEW;140 }141 private void logThread(String msg) {142 // if (logMsgs)143 System.out.println("PopUpUtils: " + msg);144 }145}...
Source:WebDriverAdditionalTestDocsAdapter.java
...35 methodAdd("org.openqa.selenium.remote.RemoteWebDriver", "findElementsByName");36 methodAdd("org.openqa.selenium.remote.RemoteWebDriver", "findElementsByPartialLinkText");37 methodAdd("org.openqa.selenium.remote.RemoteWebDriver", "findElementsByTagName");38 methodAdd("org.openqa.selenium.remote.RemoteWebDriver", "findElementsByXPath");39 methodAdd("org.openqa.selenium.Rotatable", "getOrientation");40 methodAdd("org.openqa.selenium.Rotatable", "rotate");41 methodAdd("org.openqa.selenium.support.ui.Select", "Select");42 methodAdd("org.openqa.selenium.support.ui.Select", "selectByIndex");43 methodAdd("org.openqa.selenium.support.ui.Select", "selectByValue");44 methodAdd("org.openqa.selenium.support.ui.Select", "selectByVisibleText");45 methodAdd("org.openqa.selenium.WebDriver", "close");46 methodAdd("org.openqa.selenium.WebDriver", "findElement");47 methodAdd("org.openqa.selenium.WebDriver", "findElements");48 methodAdd("org.openqa.selenium.WebDriver", "get");49 methodAdd("org.openqa.selenium.WebDriver", "getCurrentUrl");50 methodAdd("org.openqa.selenium.WebDriver", "getTitle");51 methodAdd("org.openqa.selenium.WebDriver", "quit");52 methodAdd("org.openqa.selenium.WebDriver$Navigation", "back");53 methodAdd("org.openqa.selenium.WebDriver$Navigation", "forward");54 methodAdd("org.openqa.selenium.WebDriver$Navigation", "refresh");55 methodAdd("org.openqa.selenium.WebDriver$Navigation", "to");56 methodAdd("org.openqa.selenium.WebElement", "clear");57 methodAdd("org.openqa.selenium.WebElement", "click");58 methodAdd("org.openqa.selenium.WebElement", "getAttribute");59 methodAdd("org.openqa.selenium.WebElement", "getText");60 methodAdd("org.openqa.selenium.WebElement", "isDisplayed");61 methodAdd("org.openqa.selenium.WebElement", "isEnabled");62 methodAdd("org.openqa.selenium.WebElement", "isSelected");63 methodAdd("org.openqa.selenium.WebElement", "sendKeys");64 methodAdd("org.openqa.selenium.WebElement", "submit");65 }66}...
Source:Selenium2Test.java
...21 CommandExecutor executor = new HttpCommandExecutor(command_executor) {22 @Override23 public Response execute(Command command) throws IOException{24 Response response = null;25 if (command.getName() == "newSession") {26 response = new Response();27 response.setSessionId(sessionId.toString());28 response.setStatus(0);29 response.setValue(Collections.<String, String>emptyMap());30 try {31 Field commandCodec = null;32 commandCodec = this.getClass().getSuperclass().getDeclaredField("commandCodec");33 commandCodec.setAccessible(true);34 commandCodec.set(this, new W3CHttpCommandCodec());35 Field responseCodec = null;36 responseCodec = this.getClass().getSuperclass().getDeclaredField("responseCodec");37 responseCodec.setAccessible(true);38 responseCodec.set(this, new W3CHttpResponseCodec());39 } catch (NoSuchFieldException e) {40 e.printStackTrace();41 } catch (IllegalAccessException e) {42 e.printStackTrace();43 }44 } else {45 response = super.execute(command);46 }47 return response;48 }49 };50 return new RemoteWebDriver(executor, new DesiredCapabilities());51 }52 public static void main(String [] args) {53 System.setProperty("webdriver.gecko.driver","/Users/amin/Documents/geckodriver/geckodriver");54 FirefoxOptions opts = new FirefoxOptions();55 opts.setCapability( "moz:webdriverClick", false );56 WebDriver driver = new FirefoxDriver( opts );57 //System.setProperty("webdriver.chrome.driver","/Applications/Google Chrome.app/Contents/MacOS/Google Chrome");58 //ChromeDriver driver = new ChromeDriver();59 System.out.println("test");60 HttpCommandExecutor executor = (HttpCommandExecutor) ((FirefoxDriver)driver).getCommandExecutor();;61 URL url = executor.getAddressOfRemoteServer();62 SessionId session_id = ((FirefoxDriver)driver).getSessionId();63 RemoteWebDriver driver2 = createDriverFromSession(session_id, url);64 driver2.get("http://www.google.de");65 }66}...
Source:W3CActions.java
...24 }25 26 public Void call() throws Exception27 {28 RemoteWebDriver driver = (RemoteWebDriver)getUnwrappedDriver();29 CommandExecutor executor = driver.getCommandExecutor();30 31 long start = System.currentTimeMillis();32 Command command = new Command(driver.getSessionId(), "actions", allParameters);33 Response response = executor.execute(command);34 35 new ErrorHandler(true)36 .throwIfResponseFailed(response, System.currentTimeMillis() - start);37 38 return null;39 }40}...
get
Using AI Code Generation
1import org.openqa.selenium.By;2import org.openqa.selenium.WebDriver;3import org.openqa.selenium.WebElement;4import org.openqa.selenium.chrome.ChromeDriver;5import org.openqa.selenium.remote.RemoteWebDriver;6public class SeleniumGet {7 public static void main(String[] args) {8 System.setProperty("webdriver.chrome.driver", "C:\\Users\\User\\Desktop\\chromedriver.exe");9 WebDriver driver = new ChromeDriver();10 WebElement searchBox = driver.findElement(By.name("q"));11 searchBox.sendKeys("Selenium");12 searchBox.submit();13 String title = driver.getTitle();14 System.out.println(title);15 driver.close();16 driver.quit();17 }18}19import org.openqa.selenium.By;20import org.openqa.selenium.WebDriver;21import org.openqa.selenium.WebElement;22import org.openqa.selenium.chrome.ChromeDriver;23import org.openqa.selenium.remote.RemoteWebDriver;24public class SeleniumGetCurrentUrl {25 public static void main(String[] args) {26 System.setProperty("webdriver.chrome.driver", "C:\\Users\\User\\Desktop\\chromedriver.exe");27 WebDriver driver = new ChromeDriver();28 WebElement searchBox = driver.findElement(By.name("q"));29 searchBox.sendKeys("Selenium");30 searchBox.submit();31 String title = driver.getTitle();32 System.out.println(title);33 String currentUrl = driver.getCurrentUrl();34 System.out.println(currentUrl);35 driver.close();36 driver.quit();37 }38}39import org.openqa.selenium.By;40import org.openqa.selenium.WebDriver;41import org.openqa.selenium.WebElement;42import org.openqa.selenium.chrome.ChromeDriver;43import org.openqa.selenium.remote.RemoteWebDriver;44public class SeleniumGetPageSource {45 public static void main(String[] args) {46 System.setProperty("webdriver.chrome.driver", "
get
Using AI Code Generation
1WebElement element = driver.findElement(By.name("q"));2element.sendKeys("Selenium");3WebElement element = driver.findElement(By.name("q"));4element.click();5WebElement element = driver.findElement(By.name("q"));6element.submit();7WebElement element = driver.findElement(By.name("q"));8element.clear();9WebElement element = driver.findElement(By.name("q"));10element.getTagName();11WebElement element = driver.findElement(By.name("q"));12element.getAttribute("name");13WebElement element = driver.findElement(By.name("q"));14element.getText();15WebElement element = driver.findElement(By.name("q"));16element.isDisplayed();
get
Using AI Code Generation
1package com.automation.selenium;2import java.net.MalformedURLException;3import java.net.URL;4import org.openqa.selenium.WebDriver;5import org.openqa.selenium.remote.DesiredCapabilities;6import org.openqa.selenium.remote.RemoteWebDriver;7import org.testng.annotations.Test;8public class Example1 {9public void test() throws MalformedURLException {10DesiredCapabilities capabilities = DesiredCapabilities.chrome();11driver.quit();12}13}
get
Using AI Code Generation
1package com.seleniumpointers;2import org.openqa.selenium.WebDriver;3import org.openqa.selenium.firefox.FirefoxDriver;4import org.openqa.selenium.remote.DesiredCapabilities;5import org.openqa.selenium.remote.RemoteWebDriver;6import java.net.MalformedURLException;7import java.net.URL;8public class RemoteWebDriverExample {9 public static void main(String[] args) throws MalformedURLException {10 DesiredCapabilities capabilities = DesiredCapabilities.firefox();11 driver.quit();12 }13}14package com.seleniumpointers;15import org.openqa.selenium.WebDriver;16import org.openqa.selenium.firefox.FirefoxDriver;17import org.openqa.selenium.remote.DesiredCapabilities;18import org.openqa.selenium.remote.RemoteWebDriver;19import java.net.MalformedURLException;20import java.net.URL;21public class RemoteWebDriverExample {22 public static void main(String[] args) throws MalformedURLException {23 DesiredCapabilities capabilities = DesiredCapabilities.firefox();24 driver.quit();25 }26}27package com.seleniumpointers;28import org.openqa.selenium.WebDriver;29import org.openqa.selenium.firefox.FirefoxDriver;30import org.openqa.selenium.remote.DesiredCapabilities;31import org.openqa.selenium.remote.RemoteWebDriver;32import java.net.MalformedURLException;33import java.net.URL;34public class RemoteWebDriverExample {35 public static void main(String[] args) throws MalformedURLException {36 DesiredCapabilities capabilities = DesiredCapabilities.firefox();37 driver.quit();38 }39}40package com.seleniumpointers;41import org.openqa.selenium.WebDriver;42import org.openqa.selenium.firefox.FirefoxDriver;43import org.openqa.selenium.remote.DesiredCapabilities;44import org.openqa.selenium.remote.RemoteWebDriver;45import java.net.MalformedURLException;46import java.net.URL;47public class RemoteWebDriverExample {48 public static void main(String
get
Using AI Code Generation
1import java.net.URL;2import java.util.concurrent.TimeUnit;3import org.openqa.selenium.WebDriver;4import org.openqa.selenium.chrome.ChromeDriver;5import org.openqa.selenium.remote.DesiredCapabilities;6import org.openqa.selenium.remote.RemoteWebDriver;7import org.testng.annotations.AfterMethod;8import org.testng.annotations.BeforeMethod;9import org.testng.annotations.Test;10public class RemoteWebDriverGetURL {11 WebDriver driver;12 String nodeURL;13 public void setUp() throws Exception {
get
Using AI Code Generation
1url = driver.getCurrentUrl();2String title = driver.getTitle();3String source = driver.getPageSource();4String currentWindowHandle = driver.getWindowHandle();5Set<String> windowHandles = driver.getWindowHandles();6Options options = driver.manage();7Navigation navigation = driver.navigate();8TargetLocator targetLocator = driver.switchTo();9driver.quit();10driver.close();11Object result = driver.executeScript("return 1 + 1");
LambdaTest’s Selenium 4 tutorial is covering every aspects of Selenium 4 testing with examples and best practices. Here you will learn basics, such as how to upgrade from Selenium 3 to Selenium 4, to some advanced concepts, such as Relative locators and Selenium Grid 4 for Distributed testing. Also will learn new features of Selenium 4, such as capturing screenshots of specific elements, opening a new tab or window on the browser, and new protocol adoptions.
Upgrading From Selenium 3 To Selenium 4?: In this chapter, learn in detail how to update Selenium 3 to Selenium 4 for Java binding. Also, learn how to upgrade while using different build tools such as Maven or Gradle and get comprehensive guidance for upgrading Selenium.
What’s New In Selenium 4 & What’s Being Deprecated? : Get all information about new implementations in Selenium 4, such as W3S protocol adaption, Optimized Selenium Grid, and Enhanced Selenium IDE. Also, learn what is deprecated for Selenium 4, such as DesiredCapabilites and FindsBy methods, etc.
Selenium 4 With Python: Selenium supports all major languages, such as Python, C#, Ruby, and JavaScript. In this chapter, learn how to install Selenium 4 for Python and the features of Python in Selenium 4, such as Relative locators, Browser manipulation, and Chrom DevTool protocol.
Selenium 4 Is Now W3C Compliant: JSON Wireframe protocol is retiring from Selenium 4, and they are adopting W3C protocol to learn in detail about the advantages and impact of these changes.
How To Use Selenium 4 Relative Locator? : Selenium 4 came with new features such as Relative Locators that allow constructing locators with reference and easily located constructors nearby. Get to know its different use cases with examples.
Selenium Grid 4 Tutorial For Distributed Testing: Selenium Grid 4 allows you to perform tests over different browsers, OS, and device combinations. It also enables parallel execution browser testing, reads up on various features of Selenium Grid 4 and how to download it, and runs a test on Selenium Grid 4 with best practices.
Selenium Video Tutorials: Binge on video tutorials on Selenium by industry experts to get step-by-step direction from automating basic to complex test scenarios with Selenium.
LambdaTest also provides certification for Selenium testing to accelerate your career in Selenium automation testing.
Get 100 minutes of automation test minutes FREE!!