zoukankan      html  css  js  c++  java
  • 章节十二、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”问我,群里都是软件行业的小伙伴可以相互一起学习讨论。

  • 相关阅读:
    osg::BlendFunc来设置透明度
    LCA(Tarjan)
    CODEVS1073 家族 (并查集)
    CODEVS1533 互斥的数(哈希表)
    2014-12-4
    BZOJ2661 连连看 (费用流)
    2014-11-30
    JAVA语法基础作业——动手动脑以及课后实验性问题
    课后作业01——相加
    再读大道至简第二章
  • 原文地址:https://www.cnblogs.com/luohuasheng/p/10855291.html
Copyright © 2011-2022 走看看