章节十、1-用ID和XPath、name定位元素
一、在定位元素时需要HTML标签,HTML是超文本标记语言,我们打开web网页是看到的内容就是通过html语言来实现的,按键盘“F12”调用开发者选项后,“Elements”栏中显示的就是网页的HTML代码。(没有接触过HTML的同学可以先去了解一下HTML的基础内容,这样有利于元素定位的学习)
二、用谷歌浏览器打开百度,并搜索“selenium webdriver”(通过ID、XPath的方式来进行元素定位)
输入框
“百度一下”按钮
package basicweb; import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver; public class IdXPathDemo { public static void main(String[] args) { String url = "https://www.baidu.com/";
System.setProperty("webdriver.chrome.driver", "D:\\WorkSpace_person\\Selenium\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.manage().window().maximize();
driver.get(url); //用谷歌浏览器打开百度,并搜索“selenium webdriver”
// 1、定位百度搜索页面的输入框元素,输入框的ID='kw'(.findElement--该方法用于查找元素)
// 2、在定位输入框后使用.sendKeys方法在文本框中输入“selenium webdriver”
// id 进行定位
driver.findElement(By.id("kw")).sendKeys("selenium webdriver");
// 3、在输入元素后点击搜索按钮,.click()表示点击的方法
// Xpath进行定位
driver.findElement(By.xpath("//input[@id='su']")).click();
}
}
三、如何用name来查找元素
输入框name=wd
package basicweb; import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver; public class IdXPathDemo { public static void main(String[] args) { String url = "https://www.baidu.com/";
System.setProperty("webdriver.chrome.driver", "D:\\WorkSpace_person\\Selenium\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.manage().window().maximize();
driver.get(url); //用谷歌浏览器打开百度,并搜索“selenium webdriver”
// 1、定位百度搜索页面的输入框元素
// 2、在定位输入框后使用.sendKeys方法在文本框中输入“selenium webdriver”
// name 定位输入框
driver.findElement(By.name("wd")).sendKeys("selenium webdriver");
// 3、在输入元素后点击搜索按钮,.click()表示点击的方法
// Xpath进行定位
driver.findElement(By.xpath("//input[@id='su']")).click();
} }
章节十、1-用ID和XPath、name定位元素的更多相关文章
- Helium文档6-WebUI自动化-S用于通过id\name\classname\xpth定位元素
前言 S方法可以灵活定位元素特别注意,比如to_left_of参数的使用是查找在某个元素左侧的元素,但是默认只会找第一个S方法可以灵活运用,特别是没有id,没有name,只有classname的情况, ...
- Robot Framework与Web界面自动化测试学习笔记:利用xpath定位元素
在rf中,利用selinum2的关键字进行用例编写时,很多关键字的参数是html元素的定位标识. 最简单的方式,是通过id 或name来描述元素定位信息,如 click button id=l ...
- 『心善渊』Selenium3.0基础 — 6、Selenium中使用XPath定位元素
目录 1.Selenium中使用XPath查找元素 (1)XPath通过id,name,class属性定位 (2)XPath通过标签中的其他属性定位 (3)XPath层级定位 (4)XPath索引定位 ...
- 章节十、8-XPath---如何构建有效的XPath
以下演示操作以该网址中的内容为例:https://learn.letskodeit.com/?_ga=2.143454972.85111248.1555037144-697706367.1554889 ...
- 章节十四、3-执行JavaScript命令
一.网页页面都是由html+css和javaScript组成的,如果页面中没有javaScript的存在,就不会有操作动作的执行,例如页面上你点击的按钮或者链接都离不开javaScript.(这一节不 ...
- spring boot / cloud (十六) 分布式ID生成服务
spring boot / cloud (十六) 分布式ID生成服务 在几乎所有的分布式系统或者采用了分库/分表设计的系统中,几乎都会需要生成数据的唯一标识ID的需求, 常规做法,是使用数据库中的自动 ...
- 章节十、7-Xpath---Xpath中绝对路径相对路径的区别
以下演示操作以该网址中的内容为例:https://learn.letskodeit.com/?_ga=2.143454972.85111248.1555037144-697706367.1554889 ...
- Python+Selenium 利用ID,XPath,tag name,link text,partial link text,class name,css,name定位元素
使用firefox浏览器,查看页面元素,我们以“百度网页”为示例 一.ID定位元素 利用find_element_by_id()方法来定位网页元素对象 ①.定位百度首页,输入框的元素 ②.编写示 ...
- Python3 Selenium自动化web测试 ==> 第十节 WebDriver高级应用 -- xpath语法
学习目的: xpath定位是针对常规定位方法中,最有效的定位方式. 场景: 页面元素的定位. 正式步骤: step1:常规属性 示例UI 示例UI相关HTML代码 相关代码示例: #通过id定位 dr ...
随机推荐
- [Swift]LeetCode881. 救生艇 | Boats to Save People
The i-th person has weight people[i], and each boat can carry a maximum weight of limit. Each boat c ...
- Redis面试题
1.谈谈Redis的主从复制流程 有几个重点:主节点负责写,从节点负责读,slave node 主要用来进行横向扩容,做读写分离,扩容的 slave node 可以提高读的吞吐量.必须开启 maste ...
- Android-线程池下载多个图片并保存,如果本地有该图,则不下载,直接展示到view
做了个工具方法,用来下载图片,如果本地有这个图,则不下载,直接展示到view setHP()方法可以多次使用,因为使用了线程池,所以是个异步操作,如果使用的多,建议根据需要增加线程池的线程数量 看代码 ...
- Java面向对象--类的对象之间的几种关系详解
转载: https://www.cnblogs.com/supren/p/7853377.html
- 客户端通过Feign发起请求 服务端通过request取 json对象
@RestController @RequestMapping(value = "test") public class TestServer { @RequestMapping( ...
- TortoiseSVN客户端的使用说明
1 安装TortoiseSVN客户端 准备安装文件,TortoiseSVN-1.6.16.21511-x64-svn-1.6.17.msi,双击进行安装,按照提示步骤安装,安装完成后需重启计算机,SV ...
- cassandra 3.x官方文档(7)---内部原理之如何读写数据
写在前面 cassandra3.x官方文档的非官方翻译.翻译内容水平全依赖本人英文水平和对cassandra的理解.所以强烈建议阅读英文版cassandra 3.x 官方文档.此文档一半是翻译,一半是 ...
- scala用ssh2连接Linux
这个需要安装库: import ch.ethz.ssh2.{Connection, Session, StreamGobbler} 首先用 ip 和 post 创建连接: val conn: Conn ...
- 『Candies 差分约束系统』
差分约束系统 我们先来认识一下差分约束系统鸭! 差分约束系统是一种特殊的\(n\)元一次不等式组,它包含了\(n\)个变量\(x_1-x_n\)以及\(m\)个不等式(约束条件).其中每一个不等式形如 ...
- sql server 性能调优之 SQL语句阻塞查询
在生产环境下,有时公司客服反映网页半天打不到,除了在浏览器按F12的Network响应来排查,确定web服务器无故障后.就需要检查数据库是否有出现阻塞 当时数据库的生产环境中主表数据量超过2000w, ...