在Selenium开发脚本利用辅助开发工具,可以节省许多时间,提高开发效率和软件质量,降低开发成本。在selenium开发脚本或进行测试前是必须对页面元素进行定位的,而Firefox提供了两个非常使用且方便的小工具(Firebug和FirePath)用于定位元素。

一.Firebug

Firebug是Firefox下的一款开发类插件,现属于Firefox的五星级强力推荐插件之一,它已经和Firefox浏览器无缝地结合在一起,具备在各种浏览器下面调试功能。用FireBugy有可以帮助测试开发人员快速开发脚本, 通常情况下,可以用FireBug插件在脚本开发种做四种类型的操作:

  • 显示源代码 - 它可以让你重新查看JavaScript引擎渲染之后的HTML网页。
  • 高亮显示变化 - 它可以检测并高亮(黄色)显示任何HTML页面的改变。这个特性可以立即获取你的注意,以确保你没有错过什么。
  • 快速检查 - FireBug有 Inspect 功能,能够让你快速查看你想要的web元素的定位器。
  • 复制HTML - 你可以轻松地复制HTML网页的代码,或用 innerHTML 获取部分网页,或者某个元素的XPath表达式。

下面我们来看看安装和它的基本功能:

1. 安装firebug2.0.19:

  • A. 打开火狐浏览器
  • B. 使用快捷键commond+shift+A(mac系统)或者ctr+shift+A(window系统):
  • C. 拉动上界面中的滚动条,点击下面”看看更多组件”按钮,出现界面:
  • D. 搜索firebug
  • E. 点击’添加到firefox’

2. Firebug基本功能

A. 控制台:

控制台得主要作用是用来显示网页各类错误信息,并可对日志进行打印处理。同时可以在进行javascript调试的时候当作命令行窗口使用,并通过概况子选项说明JavaScript代码执行的相关信息。如下图所示:

B. HTML:

此菜单标签功能主要用于查看当前页面的源代码功能,并可进行编辑,时时显示,从而实现页面最佳效果。启用此标签后界面如下:

整个页面被分为左右两部分,在HTML控制台的左侧可以看到整个页面当前的文档结构,可以通过单击“+”来展开。当单击相应的元素时,右侧面板中就会显示出当前元素的样式、布局以及DOM信息。而当光标移动到HTML树中相应元素上时,上面页面中相应的元素将会被高亮显示。较普通的源代码显示更为的直观和具体。双击左边源码中任一元素的属性值,出现可编辑悬浮,可对属性进行编辑,并可即可查看修改效果。

Firebug面板上导航栏的第二个箭头按钮,就是"Inspect"按钮,这个功能是用鼠标在网页上选中一个元素时,元素会被一个蓝色的框框住,同时下面的HTML面板中相应的HTML树也会展开并且高亮显示。再次单击后即可退出该模式,并且底部的HTML树也保持在这个状态。通过这个功能,可以快速寻找页面内的元素,调试和查找相应代码非常方便。刷新网页后,页面显示的仍然是用Inspect选中的区域。

HTML面板下方的“编辑”按钮可以用于直接编辑选中的HTML代码,而后面显示的是当前元素在整个DOM中的结构路径。

C. CSS:

点击CSS菜单标签,可查看所有的CSS定义信息,同时也可以通过双击来达到修改页面样式的效果,如下图所示:

D. JavasSript:

脚本功能主要是一个脚本调试器,可以进行单步调试、断点设置、变量查看等功能,同时通过右边的监控功能来实现脚本运行时间的查看和统计,提高运行效率,如下图所示:

由于firebug已经停止更新了,所以firebug支持JavaScript调试功能只是支持到了50版本以下,因为本书用的是firefox安装了54.0.1版本,所以在图中你会看到“本页面不包含 JavaScript”信息。

E. DOM功能:

单击“DOM”面板后可以看到此元素的详细的DOM信息以及函数和事件,通过提供的搜索功能实现DOM的快速准确定位,并可双击来实现DOM节点属性或值的修改,如下图:

F. 网络(Net):

该标签功能主要用来监控网页各组成元素的运行时间的信息,方便找出其中运行时间较慢的部分,进一步优化运行效率,如下图:

如上图所示 可以点击网络标签查看 网页的详细的网络请求。在做前端性能测试中,可以根据分下面的请求信息来判断那条请求性能有问题。面板上有XHR(XHR类型即通过XMLHttpRequest方法发送的请求,也就是ajax功能实现所依赖的对象) 标签,这是对异步请求过滤,这个功能在做自动化测试的过程中很有帮助。它可以查看网站的异步请求情况。包括post数据。点击其中xhr的一个请求,双击,就可以在请求下面查看该请求的参数信息以及发送的cookie等。可以通过此得到请求是否完成,请求的运行情况。

二.Firepath

Firepath可对Firebug的功能进行扩展。自动生成xpath和css,同时测试开发人员可以提供自定义的XPath值,并直接在网页上测试他们的正确性。因为firepath也是firefox的插件,所以安装同firebug.下面学习用firepath获得XPath

1. 打开FireBug,然后点击 FirePath 标签。

2. 在页面中点击右键,出现浮动菜单,点击inspect in firepath

在firepath的输入框中就会出现xpath的路径,点击Hightlight,选择的元素就会高亮度显示出来。

通过上面操作,你就可以在自动化就脚本开发的过程中选择你要取得的元素xpath路径,可以大大提高了脚本开发效率,如果你想获得的是页面元素的css选择器,只要把firebug的XPath改成CSS即可。

开发浏览器监控网页数据变化_贝程学院:Selenium辅助开发工具Firebug和Firepath相关推荐

  1. 怎么监控mysql数据变化_实时监控mysql数据库变化

    对于二次开发来说,很大一部分就找找文件和找数据库的变化情况 对于数据库变化.还没有发现比较好用的监控数据库变化监控软件. 今天,我就给大家介绍一个如何使用mysql自带的功能监控数据库变化 1.打开数 ...

  2. xpath 第一个元素_贝程学院:Selenium与XPath

    一.为什么学习XPath XPath (XML Path Language)最初是用来在 XML 文档中定位 DOM 节点的语言.由于 HTML 也可以算作 XML 的一种实现,所以 Selenium ...

  3. 编程python爬取网页数据教程_实例讲解Python爬取网页数据

    一.利用webbrowser.open()打开一个网站: >>> import webbrowser >>> webbrowser.open('http://i.f ...

  4. python用selenium爬取网页数据_Python项目实战:使用selenium爬取拉勾网数据

    " 一切不经过项目验证的代码都是耍流氓,今天我们就通过一个简单的招聘网站的数据归档进行当前热门岗位的大数据分析,最后以wordcloud进行显示.本文为数据爬取篇." 项目准备: ...

  5. javascript createelement_贝程学院:Selenium与 JavaScript

    一.为什么学习JavaScript 进行web自动化测试也好还是移动端自动化测试也好,必须要对系统实现用到的技术有一定的了解,而JavaScript作为世界上最流行的脚本语言,在电脑.手机.平板上浏览 ...

  6. java实时监控数据变化_服务数据实时监控平台

    1.前言:         之前做性能测试,使用jmeter线程回环的方式并发压力,说起来jmeter原生报告"太丑了.太丑了.太丑了.........". 前两天看到" ...

  7. 为什么改了css网页没有变化_「前端开发」HTML/CSS真的好学吗?为什么小胖认为它并没那么简单...

    提到HTML和CSS,在很多开发人员看来,它们并不是什么高深的内容,甚至是一些刚刚接触前端的人,也有相同的看法,它们真的如此简单吗?尽管很多人眼中,它们很简单,但是工作中很多人对于使用HTML和CSS ...

  8. 实时监控Mysql数据库变化_进行数据同步_了解Canal_---Canal工作笔记001

    1.Canal是阿里巴巴旗下的一款开源项目,纯Java开发. 2.由来:阿里巴巴B2B公司,因为业务的特性,卖家主要集中在国内,买家主要集中在国外,所以衍生出了杭州和美国异地机房的需求,从2010年开 ...

  9. canal 监听不到数据变化_数据的异构实战(二)手写迷你版同步工程

    点击上方"Java知音",选择"置顶公众号" 技术文章第一时间送达! 上一期讲到了通过canal订阅mysql的binlog日志并且转换为对象,那么这一次我们将 ...

最新文章

  1. Java中的锁原理、锁优化、CAS、AQS详解
  2. R语言ggplot2地理信息可视化(上)
  3. 7-9 用天平找小球 (C语言)
  4. 将RGB转换成ToWin32值
  5. 404 为什么是 404?
  6. php 生成缩略图保存,PHP批量生成图片缩略图的方法
  7. JS 简易的计算器
  8. Jar包顺序引起编译错误一例
  9. DotNetSkin 完美破解
  10. 【vue项目实战】Vue工程化项目--猫眼电影移动端(三)
  11. HTML 标题居中 小小积累
  12. 一文搞懂机器学习中的缺失值处理(超详细)
  13. 创可贴的 ROS PX4 自主飞行无人机 学习笔记(1)
  14. 半中括号怎么用公式编辑器打?
  15. SQL Server 获取2019年节假日列表(可用于Java、.Net系统实现)
  16. 【参赛作品97】openGauss单机版安装步骤
  17. [图]WPS Office 2019上架微软商城:引入全新用户界面
  18. 用UltraISO制作CentOS U盘安装盘
  19. 朝九晚五的程序员如何提高开发技能有感
  20. 电视上设置禁止安装不是从Android,海信电视禁止安装第三方软件怎么办?当贝市场教你解决方法!...

热门文章

  1. 想让DBA瞬间崩溃,那就让他去做SQL性能优化
  2. 上万规模数据湖如何在实验室测试
  3. 聚焦LS-MIMO的四大层面,浅谈5G关键技术
  4. 【华为云技术分享】一统江湖大前端DOClever—你的Postman有点Low
  5. 【Python成长之路】词云图制作
  6. 区块链学习笔记:D03 区块链在各行业领域的应用(一)
  7. mysql ddl分类_MySQL语言分类——DDL
  8. python环境变量添加失败_python环境变量设置失败
  9. R语言学习笔记(五)假设检验及其R实现
  10. fast rcnn 论文解读(附代码链接)