如何使用Selenium WebDriver进行Web自动化?
我们可以使用Selenium webdriver进行web自动化。为此,我们需要遵循以下步骤:
步骤1 - 创建Webdriver。例如:
WebDriver driver = new ChromeDriver();
以上代码用于创建一个webdriver实例并在Chrome浏览器中启动脚本执行。
步骤2 - 启动我们要执行UI测试的URL。例如:
driver.get("https://tutorialspoint.com/index.htm");
以上代码将启动作为参数传递给get方法的URL。
步骤3 - 使用任何定位器(如id、class、name、tag name、link text、partial link text、CSS或XPath)来识别web元素。findElement方法用于使用这些定位器来识别元素。例如:
WebElement e = driver.findElement(By.id("txt"));
以上代码用于使用id定位器来识别元素。
步骤4 - 在元素被定位后,对其执行操作,例如输入文本、点击等。例如:
e.sendKeys("Rest Assured");
以上代码用于在步骤3中识别的元素上输入数据。
步骤5 - 验证在步骤4中执行操作对网页的影响。例如:
String st = e.getAttribute("value");
Assert.assertEquals(st, "Rest Assured");
以上代码用于比较并验证实际值是否等于预期值-Selenium。
步骤6 - 向测试添加测试框架,如TestNG/JUnit。有关如何设置TestNG的详细信息,请访问以下链接:
https://tutorialspoint.com/testng/index.htm
步骤7 - 执行测试并记录使用测试框架创建的结果。
步骤8 - 通过退出webdriver会话来结束测试。例如:
driver.quit();
示例
代码实现
import java.util.concurrent.TimeUnit;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.testng.Assert;
import org.testng.annotations.Test;
public class NewTest {
@Test
public void f() {
System.setProperty("webdriver.chrome.driver", "chromedriver");
//webdriver instance
WebDriver driver = new ChromeDriver();
// implicit wait
driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);
//url launch
driver.get("https://tutorialspoint.com/index.htm");
//element identify
WebElement elm = driver.findElement(By.tagName("input"));
//perform action - input text
elm.sendKeys("Selenium");
String s = elm.getAttribute("value");
//validate result with Assertion
Assert.assertEquals(s, "Selenium");
//quit browser
driver.quit();
}
}输出

数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP