如何使用 Selenium WebDriver 进行 Web 自动化?

rest assureddynamic programmingprogramming

我们可以使用 Selenium WebDriver 进行 Web 自动化。为此,我们需要遵循以下步骤 −

步骤 1 − 需要创建 Webdriver。例如:

   WebDriver driver = new ChromeDriver();

上面的代码用于创建 Webdriver 实例并在 Chrome 浏览器中启动脚本执行。

步骤 2 − 启动我们要执行 UI 测试的 URL。例如:

  driver.get("https://www.tutorialspoint.com/index.htm");

上述代码将启动作为参数传递给 get 方法的 URL。

步骤 3 − 使用任何定位器(例如 id、class、name、标签名称、链接文本、部分链接文本、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://www.tutorialspoint.com/testng/index.htm

步骤 7 − 执行测试并使用测试框架记录结果。

步骤 8 − 退出 webdriver 会话以完成测试。例如:

driver.quit();

示例

Code Implementation

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 实例
    WebDriver driver = new ChromeDriver();

    // 隐式等待
    driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);

    // url 启动
    driver.get("https://www.tutorialspoint.com/index.htm");

  // 元素标识
    WebElement elm = driver.findElement(By.tagName("input"));

    // 执行操作 - 输入文本
    elm.sendKeys("Selenium");
    String s = elm.getAttribute(&"value&";);

    //使用断言验证结果
    Assert.assertEquals(s, &"Selenium&";);

//退出浏览器
      driver.quit();
   }
}

输出


相关文章