Basic functions

  • navigate to url, move forward, move backwards
  • get title, get url
  • take screenshot
  • refresh page
  • close browser/tab
  • send keys
  • execute script
  • locating web elements driver.findElement() of 0 match throws exception, driver.findElements() if 0 returns empty list
    • id, class name, link text, name, tag, css selector, XPath
  • Element
    • getText(), getAttribute(), getTagName(), isDisplayed(), isEnabled(), isSelected() for check box, isMultiple() multi select box, getOptions()
  • element.click() - button, click, checkbox, combobox
  • element.sendKeys(”string”) - input field, element.clear()
  • form.submit() - form
  • Listbox Selection
    • new Select(element).selectByIndex(elementCount)
    • select[ByIndex, ByVisibleText, ByValue]deselect[ByIndex, ByVisibleText, ByValue]
    • deselectAll()
  • Window
    • driver.manage().window().getSize() → getHeight() or getWidth()
    • driver.manage().window().setSize(Dimension d)
    • driver.manage().window().maximize()
    • setPosition()
    • driver.getWindowHandle()
    • driver.switchTo().window(windowHandle)
  • Synchronization, Cookies, Data Driven Testing
    • Page Load Timeout
      • Sets the amount of time to wait for a page load to complete
      • Global setting of the Webdriver object
      • Negative value means indefinite wait time
      • driver.manage().timeouts(). pageLoadTimeout(30, TimeUnit.SECONDS)
    • Implicit Wait
      • Specifies the waiting time for element not immediately visible
      • Global setting of the Webdriver object
      • 0 by default
      • driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS)
    • Explicit Wait
      • Waiting for a certain condition
      • Poor alternative – Thread.sleep(1000)
      • Recommended – WebDriverWait class
      • WebDriverWait wait = new WebDriverWait(driver, TIME_OUT_IN_SECONDS); wait.until(ExpectedConditions.method);
    • ExpectedConditions class
      • presenceOfElementLocated(By locator)
      • textToBePresentInElement(WebElement element, text)
      • titleContains(title)
      • visibilityOf(element)
      • invisibilityOfElementLocated(By locator)
      • elementToBeSelected(WebElement element)
      • elementToBeClickable(By locator)
    • Cookie
      • Useful for testing the login feature
      • Getting or setting session IDs
      • Cookie attributes (Name, Value, Domain, Path, Expiry, Secure, Http only)
      • driver.manage().getCookies() get cookies from current session
      • driver.manage().getCookieNamed(cookieToTest) get by name
      • driver.manage().deleteAllCookies() session
      • driver.manage().deleteCookie(TestCookie) specific
      • driver.manage().deleteCookieNamed(cookieToTest) name
      • Adding cookie - domain attribute is current by default
      • Cookiecookie = newCookie("mycookie","123456");
        driver.manage().addCookie(cookie);

SuperMade with Super