以下演示操作以图中的内容为例,图中的页面是本地的网页,小伙伴们如果需要可以加入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”问我,群里都是软件行业的小伙伴可以相互一起学习讨论。

posted on 2019-05-13 10:35  时光以北暮南城  阅读(427)  评论(0编辑  收藏  举报