Selenium WebDriver is a web automation framework that allows you to execute cross-browser tests. This tool is used for automating web application testing, to verify that it works as expected. It supports many browsers such as Chrome, Firefox, Safari, and IE, and allows cross-browser testing by controlling the browser from the OS level.
Uses of Selenium WebDriver API
Test Automation: Selenium WebDriver API is primarily used in automating tests for web applications. Developers can write test cases in multiple programming languages like Java, Python, C#, PHP, Ruby, Perl, etc.
Cross Browser Testing: Selenium supports a wide range of browsers, both in desktop and mobile platforms. It gives the ability to execute tests in different browser environments, thereby ensuring the application's compatibility across platforms.
Data Extraction: Selenium can also be used for data extraction from web pages. This is also known as web scraping.
Automate Web-Based Administration Tasks: Selenium can be used for automating repetitive web-based administration tasks.
Python Code Example
Here's a simple example of how to use Selenium WebDriver in Python:
from selenium import webdriver
# Instantiate the Chrome browser
driver = webdriver.Chrome()
# Open the URL
driver.get('https://www.google.com')
# Find the search box using the name attribute
search_box = driver.find_element_by_name('q')
# Type in the search box
search_box.send_keys('Web Scraping')
# Submit the query
search_box.submit()
JavaScript Code Example
Here's a similar example in JavaScript using Selenium WebDriver:
const {Builder, By, Key, until} = require('selenium-webdriver');
async function example() {
let driver = await new Builder().forBrowser('chrome').build();
try {
// Open URL
await driver.get('https://www.google.com');
// Find the search box using name
let searchBox = await driver.findElement(By.name('q'));
// Type in the search box
await searchBox.sendKeys('Web Scraping', Key.RETURN);
// Wait until the google page shows the result.
await driver.wait(until.titleIs('Web Scraping - Google Search'), 1000);
} finally {
// Quit driver
await driver.quit();
}
}
example();
In both examples, Selenium WebDriver is used to open a browser, navigate to Google's webpage, find the search box, type a query, and submit the form.