| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 开发测试 -> Web自动化之元素定位(一) -> 正文阅读 |
|
[开发测试]Web自动化之元素定位(一) |
Web自动化之元素定位1.认识web自动化测试 ??了解什么是自动化测试 ??了解为什么要进行自动化测试 ??掌握自动化测试的分类 ??掌握web自动化测试的使用条件和场景 ??了解自动化测试工具的优缺点 ??了解了解自动化测试的前景和发展方向 web自动化条件和使用范围 ·?手动测试已经完成 ·?项目周期长 ·?需求稳定 使用自动化测试的场景 频繁的回归测试 互联网迭代频繁 传统行业需求变化不大,应用频繁 性能测试 常见的自动化web测试工具 QTP(收费) QTP是Mercury公司的Quick Test Professional的简称,是一种自动测试工具。使用QTP的目的是想用它来执行重复的自动化测试,主要是用于回归测试和测试同一软件的新版本。因此你在测试前要考虑好如何对应用程序进行测试,例如要测试哪些功能、操作步骤、输入数据和期望的输出数据等,后来Mecury公司被惠普收购 · Selenium(开源) Selenium是ThroughtWorks一个强大的基于浏览器的开源自动化测试工具,通常用来编写web应用的自动化测试 · RFT(收费) IBM Rational Test Professional的简称,是一款先进的自动化的功能和回归测试工具,使用与测试人员和GUI开发人员,基础是针对Java,.NET的对象计数和基于web应用程序的录制,回放功能。 · · Watir(开源) ?使用Ruby实现的开源web自动化测试框架,小巧灵活 · Sahi(开源) ?印度一家公司开发的web自动化测试工具,简单易用,支持Ajax和web2.0 · QTP与Selenium的比较 ·?Selenium是开源的、免费的,QTP是商业版、收费的 ·?Selenium支持java/python/ruby/php等,QTP早期版本只支持vbs ·?Selenium只能测试浏览器,QTP则都可以 ·?Selenium支持操作系统多,而QTP只支持Windows 2.web自动化测试课程简介?2.1 工具的安装与使用要想让计算机定位到元素,就要使用计算机能够读懂的css选择器或者xpath路径表达式,那么我们就需要用到接下来的几个插件(以下的这些插件都是Firefox浏览器插件,我们需要安装Firefox浏览器,Firefox浏览器的安装配置参考3.1.3第三部分火狐浏览器的安装介绍) 1.安装firebug插件1.打开firefox浏览器,点击右上角菜单 2.在右上角的搜索栏中输入firebug,并回车 3.在搜索结构中找到firebug,并点击搜索结果之后的安装 4.安装完成后,点击扩展查看右侧列表中是否存在firebug 5.打开firebug插件 6.检查未安装firepath插件 2.安装firepath插件1.搜索firepath插件按照上述步骤进行操作,进行安装 2.安装完成之后提示重新启动浏览器,点击重启 3.重启浏览器之后打开firebug,在如图所示位置出现firepath,则表示插件安装完成 2.2 css选择器什么是CSS选择器? CSS 中,选择器是一种模式,用于选择需要添加样式的元素。计算机能够通过css选择器定位到相应元素,我们在编写自动化测试脚本的时候很多时候是在不断地找到css选择器。 通过id,class等定位元素 通过元素之间的嵌套定位元素 通过元素的属性定位元素 通过父子关系定位元素 通过元素状态定位元素 其他 学习练习网站???css选择器 2.3?xpath路径表达式什么是xpath?
XML与HTML的区别xpath路径语句在自动化web测试中的作用在我们做手动测试的手,我们可以很轻易的找到我们需要点击的输入框、按钮等,但是计算机没有这么智能,于是我们就用到了xpath路径表达式来在一个web页面中定位元素,其语法同css有异曲同工之处,同学们可以在两者之间选择一个,当然最好都掌握 2.3.1 节点之间的关系 ?1.父(parent) ??每个元素以及属性都有一个父。 ??下面是一个简单的XML例子中,book 元素是 title、author、year 以及 price 元素的父: ????<?xml version="1.0" encoding="utf-8"?> ????<book> ??????<title>Harry Potter</title> ??????<author>J K. Rowling</author> ??????<year>2005</year> ??????<price>29.99</price> ????</book> ?2.子(Children) ??元素节点可有零个、一个或多个子。 ??在下面的例子中,title、author、year 以及 price 元素都是 book 元素的子: ????<?xml version="1.0" encoding="utf-8"?> ????<book> ??????<title>Harry Potter</title> ??????<author>J K. Rowling</author> ??????<year>2005</year> ??????<price>29.99</price> ????</book> ?3.同胞(Sibling) ??拥有相同的父的节点 ??在下面的例子中,title、author、year 以及 price 元素都是同胞: ????<?xml version="1.0" encoding="utf-8"?> ????<book> ??????<title>Harry Potter</title> ??????<author>J K. Rowling</author> ??????<year>2005</year> ??????<price>29.99</price> ????</book> ?4.先辈(Ancestor) ??某节点的父、父的父,等等。 ??在下面的例子中,title 元素的先辈是 book 元素和 bookstore 元素: ????<bookstore> ????<book> ??????<title>Harry Potter</title> ??????<author>J K. Rowling</author> ??????<year>2005</year> ??????<price>29.99</price> ????</book> ????</bookstore> ?5.后代(Descendant) ??某个节点的子,子的子,等等。 ??在下面的例子中,bookstore 的后代是 book、title、author、year 以及 price 元素: ????<bookstore> ????<book> ??????<title>Harry Potter</title> ??????<author>J K. Rowling</author> ??????<year>2005</year> ??????<price>29.99</price> ????</book> ????</bookstore> 2.3.2 xpath路径表达式?XPath (XML Path Language) 是一门在 XML 文档中查找信息的语言,可用来在 XML 文档中对元素和属性进行遍历。 选取节点 XPath 使用路径表达式来选取 XML 文档中的节点或者节点集。这些路径表达式和我们在常规的电脑文件系统中看到的表达式非常相似。 下面列出了最常用的路径表达式:
在下面的表格中,我们已列出了一些路径表达式以及表达式的结果:
谓语(Predicates) 谓语用来查找某个特定的节点或者包含某个指定的值的节点,被嵌在方括号中。 在下面的表格中,我们列出了带有谓语的一些路径表达式,以及表达式的结果:
选取未知节点 XPath 通配符可用来选取未知的 XML 元素。
在下面的表格中,我们列出了一些路径表达式,以及这些表达式的结果:
选取若干路径通过在路径表达式中使用“|”运算符,您可以选取若干个路径。 在下面的表格中,我们列出了一些路径表达式,以及这些表达式的结果:
XPath的运算符(了解)下面列出了可用在 XPath 表达式中的运算符: |
|
开发测试 最新文章 |
pytest系列——allure之生成测试报告(Wind |
某大厂软件测试岗一面笔试题+二面问答题面试 |
iperf 学习笔记 |
关于Python中使用selenium八大定位方法 |
【软件测试】为什么提升不了?8年测试总结再 |
软件测试复习 |
PHP笔记-Smarty模板引擎的使用 |
C++Test使用入门 |
【Java】单元测试 |
Net core 3.x 获取客户端地址 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年2日历 | -2025/2/5 20:24:25- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |