• Selenium Video Tutorials

Selenium WebDriver - 第一个测试脚本



在开始使用 Selenium 的第一个测试脚本之前,我们应该确保 Java 和 Maven 已安装在我们的系统中。

创建第一个测试脚本的先决条件步骤

步骤 1 - 通过运行命令:java(在命令提示符中)确认 Java 安装。

步骤 2 - 通过运行命令确认已安装的 Java 版本

java –version

步骤 3 - 通过运行命令确认已安装的Maven版本 -

mvn –version

步骤 4 - 从链接下载 Eclipse 技术下载并安装任何代码编辑器,例如 Eclipse。

要获取有关 Eclipse 及其安装过程的更多信息,请访问链接Eclipse 教程

创建第一个测试脚本的步骤

步骤 1 - 启动驱动程序会话并在浏览器上执行某些操作,例如使用以下代码在 Chrome 浏览器上启动网页 -

Webdriver driver = new ChromeDriver();

driver.get("https://tutorialspoint.com/selenium/practice/text-box.php");

步骤 2 - 使用 getCurrentUrl() 方法检索有关在 Chrome 浏览器上启动的当前 URL 的一些信息。

driver.getCurrentUrl();

步骤 3 - 添加一些同步技术,以便 Selenium 工具和浏览器操作之间的交互保持同步。Selenium 中有几种同步方法可用,例如隐式、显式和流畅等待。

虽然隐式等待是一种全局等待(适用于测试用例中的所有步骤),但显式和流畅等待应用于浏览器上的特定元素。对于我们这里的第一个测试脚本,我们只应用隐式等待。

添加 15 秒隐式等待的语法 -

driver.manage().timeouts().implicitlyWait(15, TimeUnit.SECONDS);

要获取有关 Selenium 中不同等待的更多信息,请访问链接Selenium Webdriver 等待支持

步骤 4 - 在同一个 webdriver 会话中对 webelement 执行任何任务,为此,使用任何Selenium 定位器(如 id、name、class、tagname、link text、partial link text、xpath 和 css 选择器)以及 findElement() 方法唯一地识别该元素。如果有多个元素具有相同的值的定位器,则应仅识别第一个匹配的元素。

使用 xpath 定位器识别元素的语法 -

WebElement e = driver.findElement(By.xpath("<value of xpath>"));

步骤 5 - 使用 sendKeys() 方法对上一步中识别的元素执行任务。输入文本 - Selenium,要输入的文本作为参数传递给该方法。

语法

e.sendKeys("Selenium");

步骤 6 - 使用 getAttribute() 方法请求输入框中输入的值的信息,并将值作为参数传递给该方法。

语法

String text = driver.findElement(By.xpath("<value of xpath>")).getAttribute("value");

步骤 7 - 使用clear()方法清除输入的文本。

语法

e.clear();

步骤 8 - 再次使用 getAttribute() 方法请求输入框中值的信息(以证明在使用 clear() 方法后输入框中没有值),并将值作为参数传递给该方法。

语法

String text = driver.findElement(By.xpath("<value of xpath>")).getAttribute("value");

步骤 9 - 使用 quit() 方法终止驱动程序会话,这也会关闭已打开的浏览器窗口。

语法

driver.quit();

示例

右键单击下面的网页,然后在 Chrome 浏览器中单击“检查”按钮。要识别页面上的第一个文本框,请单击突出显示的可见 HTML 代码顶部的左上箭头。

Selenium First Test Script 1

一旦我们单击并指向输入框(在下图中突出显示),其 HTML 代码就会出现,反映输入标签名称和类型属性的值为文本。

Selenium First Test Script 2

让我们以以上页面为例,我们首先使用sendKeys()方法在文本框中输入文本。稍后,我们将使用clear()方法清除文本。

代码实现

package org.example;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import java.util.concurrent.TimeUnit;

public class FrstJavaTestScript {
   public static void main(String[] args) throws InterruptedException {

      // Initiate the Webdriver
      WebDriver driver = new ChromeDriver();

      // adding implicit wait of 15 secs
      driver.manage().timeouts().implicitlyWait(15, TimeUnit.SECONDS);

      // Opening the webpage where we will identify edit box to enter        driver.get("https://tutorialspoint.com/selenium/practice/text-box.php");

      // getting current URL
      System.out.println("Getting the Current URL: " + driver.getCurrentUrl());

      // Identify the input box with xpath locator
      WebElement e = driver.findElement(By.xpath("//*[@id='fullname']"));

      // enter text in input box
      e.sendKeys("First Test Script");

      // Get the value entered
      String text = e.getAttribute("value");
      System.out.println("Entered text is: " + text);

      // clear the text entered
      e.clear();

      // Get no text after clearing text
      String text1 = e.getAttribute("value");
      System.out.println("Get text after clearing: " + text1);

      // Closing browser
      driver.quit();
   }
}

输出

Getting the Current URL: 
https://tutorialspoint.com/selenium/practice/text-box.php
Entered text is: First Test Script
Get text after clearing: 

Process finished with exit code 0

在以上示例中,我们首先获得了当前 URL,控制台中的消息为:获取当前 URL:Selenium 自动化实践表单。然后,我们在输入框中输入了文本第一个测试脚本,我们使用消息 - 输入的文本为:第一个测试脚本在控制台中检索了输入的值。接下来,我们清除了输入的值,因此在同一个文本框中没有获得任何值。

最后,收到了消息进程已完成,退出代码为 0,表示代码已成功执行。

结论

这结束了我们对 Selenium Webdriver 第一个测试脚本教程的全面介绍。我们首先描述了创建第一个测试脚本的先决条件步骤、创建第一个测试脚本的步骤以及一个示例来说明如何在 Selenium Webdriver 中创建第一个测试脚本。这使您深入了解 Selenium Webdriver - 第一个测试脚本。明智的做法是不断练习您学到的知识,并探索与 Selenium 相关的其他知识,以加深您的理解并拓宽您的视野。

广告