• 章节十二、1-如何取到元素上的文本和取到元素任意一个属性的属性值


    以下演示操作以图中的内容为例,图中的页面是本地的网页,小伙伴们如果需要可以加入555191854下载或者找其它的网站进行练习:

    一、如何获取目标元素的文本

    例如我们需要获取到“打开新Tab”这个文本:

     1 package usefulmethods;
     2 
     3 import java.util.concurrent.TimeUnit;
     4 
     5 import org.junit.jupiter.api.AfterEach;
     6 import org.junit.jupiter.api.BeforeEach;
     7 import org.junit.jupiter.api.Test;
     8 import org.openqa.selenium.By;
     9 import org.openqa.selenium.WebDriver;
    10 import org.openqa.selenium.WebElement;
    11 import org.openqa.selenium.chrome.ChromeDriver;
    12 
    13 class GetTextDemo {
    14     WebDriver driver;
    15     String url;
    16 
    17     @BeforeEach
    18     void setUp() throws Exception {
    19         driver = new ChromeDriver();
    20         url = "C:\Users\acer\eclipse-workspace\SeleniumPractise\PracticePage.html";
    21         driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
    22         driver.manage().window().maximize();
    23     }
    24 
    25     @Test
    26     void test() {
    27         driver.get(url);
    28 //        首先我们需要定位到这个文本文件包含在的元素标签
    29         WebElement buttonElement = driver.findElement(By.id("opentab"));
    30 //        定义一个String类型的变量来接收获取到的文本
    31         String elementText = buttonElement.getText();
    32 //        打印获取到的文本文件
    33         System.out.println("获取到的文本为:"+elementText);
    34     }
    35     
    36     @AfterEach
    37     void tearDown() throws Exception {
    38         Thread.sleep(2000);
    39         driver.quit();
    40     }
    41 }

    运行结果:

    二、如何获取元素的属性值

    以下演示操作以图中标识的“请输入姓名”文本框为例:

     1 package usefulmethods;
     2 
     3 import java.util.concurrent.TimeUnit;
     4 
     5 import org.junit.jupiter.api.AfterEach;
     6 import org.junit.jupiter.api.BeforeEach;
     7 import org.junit.jupiter.api.Test;
     8 import org.openqa.selenium.By;
     9 import org.openqa.selenium.WebDriver;
    10 import org.openqa.selenium.WebElement;
    11 import org.openqa.selenium.chrome.ChromeDriver;
    12 
    13 class GetAttributeDemo {
    14     WebDriver driver;
    15     String url;
    16 
    17     @BeforeEach
    18     void setUp() throws Exception {
    19         driver = new ChromeDriver();
    20         url = "C:\Users\acer\eclipse-workspace\SeleniumPractise\PracticePage.html";
    21         driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
    22         driver.manage().window().maximize();
    23     }
    24     
    25     @Test
    26     void test() {
    27         driver.get(url);
    28         WebElement el = driver.findElement(By.name("enter-name"));
    29 //        使用getAttribute方法获取属性的值,需要获取元素的那个属性就转入相应的属性名称
    30         String elementAttri = el.getAttribute("name");
    31 //        将获取到的属性值打印出来
    32         System.out.println("name属性的属性值为:"+elementAttri);
    33     }
    34 
    35     @AfterEach
    36     void tearDown() throws Exception {
    37         Thread.sleep(2000);
    38         driver.quit();
    39     }
    40 }

    运行结果为:

    如果有不明白的小伙伴可以加群“555191854”问我,群里都是软件行业的小伙伴可以相互一起学习讨论。

  • 相关阅读:
    HDU1006
    白话经典算法系列之六 高速排序 高速搞定
    pca算法
    硬件这碗饭有那么好吃吗?
    《学会等待》有感
    oracle execute immediate
    HDU 2059 龟兔赛跑
    C++ Tricks(一)—— 判断字符串 string 对象的所有字符都相等
    辨异 —— 数学基本概念
    辨异 —— 数学基本概念
  • 原文地址:https://www.cnblogs.com/luohuasheng/p/10855291.html
Copyright © 2020-2023  润新知