web端自动化基础

本文阐述了学习元素定位的重要性,介绍了css选择器和xpath在自动化测试中的应用,以及如何利用Firefox和相关插件进行元素定位。了解XPath作为XML路径语言,及其与HTML的区别,有助于理解节点和选择特定节点的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

元素的定位

为什么要学习元素定位?

1)计算机没有智能到人的程度。

2)计算机不能像手动测试人员一样通过眼看,手操作鼠标点击,操作键盘输入。

3)计算机通过一系列计数手段找到元素(按钮、输入框、模拟键盘等)

元素定位的工具或手段有哪些?

1)css选择器

2)xpath

环境及工具

1)firefox35

2)firebug插件

3)firepath插件

xpath

什么是xpath?

XPath即为XML路径语言,它是一种用来(标准通用标记语言的子集)在 HTML\XML 文档中查找信息的语言。

什么是XML?

XML 指可扩展标记语言(EXtensible Markup Language)

XML 是一种标记语言,很类似 HTML

XML 的设计宗旨是传输数据,而非显示数据

XML与HTML

节点

节点的概念:每个XML/HTML的标签我们都称之为节点

 

 获取元素

XPath 使用路径表达式来选取 XML 文档中的节点或者节点集。这些路径表达式和我们在常规的电脑文件 系统中看到的表达式非常相似。

 nodename  选取此节点的所有子节点

 / 从根节点选取

// 从匹配选择的当前节点选择文档中的节点,而不考虑他们的位置

. 选取当前节点

 查找某个特定的节点或者包含某个指定的值的节点

 

/bookstore/book[1] 选取属于bookstore子元素的第一个book元素

 

 /bookstore/book[last()] 选取属于bookstore子元素的最后一个book元素

 

  /bookstore/book[last()-1] 选取属于bookstore子元素的倒数第二个book元素

   /bookstore/book[position()<3]选取最前面的两个属于bookstore元素的子元素的book元素

 //title[@lang]选取所有拥有名为lang的属性的title元素

  //title[@lang='eng']选取所有title元素,且这些元素拥有值为eng的lang值

 

 *匹配任何元素节点

 @*匹配任何属性节点

node()匹配任何类型的节点

 /bookstore/* 选取bookstore元素的所有子元素

 //*选取文档中的所有元素

 html/node()/meta/@* 选择html下面任何节点下的meta节点的所有属性

 //title[@*]

 

//book/title |     //book/price      选取book元素的所有title和price元素

 //title | //price 选取文档中所有的title和price元素

 //bookstore/book/title | //price 选取属于bookstore元素的book元素的所有title元素,以及文档中所有的price元素.

 

 //*[text()="x'x'x"] 全部/title/text() 文本内容是xxx的元素

//*[starts-with(@href,"//ss1")]属性以xxx开头的元素

 //*[contains(@href,"//ss1")] 属性中含有xxx的元素


//*[@attribute1=value1 and @attribute2=value2] 同时有两个属性值的元素

 

css选择器 

什么是css选择器?

CSS 中,选择器是一种模式,用于选择需要添加样式的元素。计算机能够通过css选择器定位到相应元素, 我们在编写自动化测试脚本的时候很多时候是在不断地找到css选择器。

css选择器语法

1)通过伪类名、id、标签名定位

 .class

 #id

 *

element

 

 element,element 选择所有<div>元素和所有<p>元素

 element element选择所有<div>元素内部的所有<p>元素

 element>element 选择父元素为<div>元素的所有<p>元素

 [attribute] 选择带有targer属性所有元素

 [attribute = value] 

 

 

 

 

 

 

        

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值