热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

菜鸟学自动化测试(一)seleniumIDE

菜鸟学自动化测试(一)----seleniumIDE2011-10-2323:37by虫师, 编辑----前言   对于,我们做测试的新手来说,自动化测试一直是一个比较高级的领域,

菜鸟学自动化测试(一)----selenium IDE

2011-10-23 23:37 by 虫师, 编辑

----//前言


    对于,我们做测试的新手来说,自动化测试一直是一个比较高级的领域,当然是相对于手工测试来说。最近,对自动化测试产生了兴趣。不,具体点应该是对selenium工具产生了兴趣。为什么不是QTP呢,之前,QTP也有学习,后来还买了本《QTP自动化测试进阶指南》,看了几天,不知为什么看不下去。嗯!我一直偏爱于开源的技术和工具。最早用LR做性能测试,后来发现了JMeter那个小工具后,基本上能用JMeter解决的问题,就不在用LR了。开源的东西好处多多,当然了不足也多多。这里就不啰嗦了。呵呵。

    下面说说selenium吧!想学一样东西,找相关学习资料是第一步。说说我觉得比较好的资料:《selenium私房菜系列》、selenium官方文档、《selenium 1.0 testing tools 》。不过,我还是买了一本书,我把在当当网的评论贴过来。

"本来想买,后来听朋友说,内容行间距很大,有凑页数的意思,前面部分是在翻译(selenium)官网的文档,包括后面也?有真正写出作者公司的实战经验。打开一看基本和朋友说的一样。为什么后来又要买了,有几分无奈在里面。selenium 的中文资料并不多,网上的都是零散的皮毛,本人英语很差,所以,英文的资料看起来太吃力。《selenium 1.0 testing tools 》其实是一本很好的书,可惜没有中文的,其实可以慢慢啃,但selenium 2.0都出来了,selenium RC 已经被selinum server替代,又加了很多新技术,跟不上啊。所以,只能选了这本书,希望对我有所帮助。" 下面我的笔记也算是基于《零成本实现web自动化测试---基于seleinum与Bromine》这本书的。

----//认识IDE面板

关于selenium IDE的安装,请参考我的上一篇文章《selenium RC 配置》

菜鸟学自动化测试(一)----selenium IDE

为了方便简洁,我们就按照上图的数字标记介绍:

1文件:创建、打开和保存测试案例和测试案例集。编辑:复制、粘贴、删除、撤销和选择测试案例中的所有命令。Options: 用于设置seleniunm IDE。

2。用来填写被测网站的地址。

3。速度控制:控制案例的运行速度。

4。运行所有:运行一个测试案例集中的所有案例。

5。运行:运行当前选定的测试案例。

6。暂停/恢复:暂停和恢复测试案例执行。

7。单步:可以运行一个案例中的一行命令。

8。录制:点击之后,开始记录你对浏览器的操作。

9。案例集列表。

10。测试脚本;table标签:用表格形式展现命令及参数。source标签:用原始方式展现,默认是HTML语言格式,也可以用其他语言展示。

11。查看脚本运行通过/失败的个数。

12。当选中前命令对应参数。

13。日志/参考/UI元素/Rollup

日志:当你运行测试时,错误和信息将会自定显示。

参考:当在表格中输入和编辑selenese命令时,面板中会显示对应的参考文档。

UI元素/Rollup:参考帮助菜单中的,UI-Element Documentation。

 

----//编辑命令

selenium为我们录制的脚本不是100%符合我们的需求的,所以,编辑录制的脚本是必不可少的工作。

1.  编辑一行命令或注释。

 在Table标签下选中某一行命令,命令由command、Target、value三部分组成。可以对这三部分内容那进行编辑。
菜鸟学自动化测试(一)----selenium IDE

 2.  插入命令。

  在某一条命令上右击,选择“insert new command”命令,就可以插入一个空白,然后对空白行进程编辑。

菜鸟学自动化测试(一)----selenium IDE

  3. 插入注解

   以上面同样的方式右击选择“insert new comment”命令插入注解空白行,本行内容不被执行,可以帮助我们更好的理解脚本,插入的内容以紫色字体显示。

菜鸟学自动化测试(一)----selenium IDE

 4. 移动命令或注解

  有时我们需要移动某行命令的顺序,我们只需要左击鼠标拖动到相应的位置即可。

菜鸟学自动化测试(一)----selenium IDE

 

----//录制我们的第一个脚本

我们的录制流程:

用火狐浏览器,打开一个新的标签-----输入谷歌网址(http://www.google.com.hk/)----在搜索框输入:selenium----点击“google搜索”按钮。 

注:注意开启和关闭selenium IDE面板上的红色圆形的录制按钮。

录制的脚本:

菜鸟学自动化测试(一)----selenium IDE

 

----//调试脚本

1. 设置断点。

  要设置断点,先选择一行命令,点击鼠标右键,在下拉菜单中选择“Toggle Breakpoint”命令,点击“运行”按钮,脚本会运行到断点处停止。用过myecilpse的debug功能来调试脚本的同学懂的!

菜鸟学自动化测试(一)----selenium IDE

2. 通过页面源代码来调试脚本

  很多情况下,调试自动化测试案例都离不开查看页面源代码,我们可以借助firefox的firebug工具,关于firebug的安装(浏览器菜单栏---工具---查看组件---搜索firebug---安装并重启浏览器即可)。

如:我们不确定或想获得谷歌搜索按钮的属性。在按钮上右击---查看元素

菜鸟学自动化测试(一)----selenium IDE

在浏览器下方打开的firebug工具里面,就可以查看按钮代码了。

菜鸟学自动化测试(一)----selenium IDE

 

3. 定位辅助

  当selenium IDE录制脚本时,它会存储额外的信息,支持用户挑选其他格式的定位器来代替默认格式的定位器,这种特殊性对于学习定位器很有用。

菜鸟学自动化测试(一)----selenium IDE

我们可以选择其他的命令来代替“name=btnG” 命令,当然,脚本依然是可以运行的。

关于 selenium IDE一些基础的东西就将这些。下一篇内容在准备中。

----//前言


    对于,我们做测试的新手来说,自动化测试一直是一个比较高级的领域,当然是相对于手工测试来说。最近,对自动化测试产生了兴趣。不,具体点应该是对selenium工具产生了兴趣。为什么不是QTP呢,之前,QTP也有学习,后来还买了本《QTP自动化测试进阶指南》,看了几天,不知为什么看不下去。嗯!我一直偏爱于开源的技术和工具。最早用LR做性能测试,后来发现了JMeter那个小工具后,基本上能用JMeter解决的问题,就不在用LR了。开源的东西好处多多,当然了不足也多多。这里就不啰嗦了。呵呵。

    下面说说selenium吧!想学一样东西,找相关学习资料是第一步。说说我觉得比较好的资料:《selenium私房菜系列》、selenium官方文档、《selenium 1.0 testing tools 》。不过,我还是买了一本书,我把在当当网的评论贴过来。

"本来想买,后来听朋友说,内容行间距很大,有凑页数的意思,前面部分是在翻译(selenium)官网的文档,包括后面也?有真正写出作者公司的实战经验。打开一看基本和朋友说的一样。为什么后来又要买了,有几分无奈在里面。selenium 的中文资料并不多,网上的都是零散的皮毛,本人英语很差,所以,英文的资料看起来太吃力。《selenium 1.0 testing tools 》其实是一本很好的书,可惜没有中文的,其实可以慢慢啃,但selenium 2.0都出来了,selenium RC 已经被selinum server替代,又加了很多新技术,跟不上啊。所以,只能选了这本书,希望对我有所帮助。" 下面我的笔记也算是基于《零成本实现web自动化测试---基于seleinum与Bromine》这本书的。

----//认识IDE面板

关于selenium IDE的安装,请参考我的上一篇文章《selenium RC 配置》

菜鸟学自动化测试(一)----selenium IDE

为了方便简洁,我们就按照上图的数字标记介绍:

1文件:创建、打开和保存测试案例和测试案例集。编辑:复制、粘贴、删除、撤销和选择测试案例中的所有命令。Options: 用于设置seleniunm IDE。

2。用来填写被测网站的地址。

3。速度控制:控制案例的运行速度。

4。运行所有:运行一个测试案例集中的所有案例。

5。运行:运行当前选定的测试案例。

6。暂停/恢复:暂停和恢复测试案例执行。

7。单步:可以运行一个案例中的一行命令。

8。录制:点击之后,开始记录你对浏览器的操作。

9。案例集列表。

10。测试脚本;table标签:用表格形式展现命令及参数。source标签:用原始方式展现,默认是HTML语言格式,也可以用其他语言展示。

11。查看脚本运行通过/失败的个数。

12。当选中前命令对应参数。

13。日志/参考/UI元素/Rollup

日志:当你运行测试时,错误和信息将会自定显示。

参考:当在表格中输入和编辑selenese命令时,面板中会显示对应的参考文档。

UI元素/Rollup:参考帮助菜单中的,UI-Element Documentation。

 

----//编辑命令

selenium为我们录制的脚本不是100%符合我们的需求的,所以,编辑录制的脚本是必不可少的工作。

1.  编辑一行命令或注释。

 在Table标签下选中某一行命令,命令由command、Target、value三部分组成。可以对这三部分内容那进行编辑。
菜鸟学自动化测试(一)----selenium IDE

 2.  插入命令。

  在某一条命令上右击,选择“insert new command”命令,就可以插入一个空白,然后对空白行进程编辑。

菜鸟学自动化测试(一)----selenium IDE

  3. 插入注解

   以上面同样的方式右击选择“insert new comment”命令插入注解空白行,本行内容不被执行,可以帮助我们更好的理解脚本,插入的内容以紫色字体显示。

菜鸟学自动化测试(一)----selenium IDE

 4. 移动命令或注解

  有时我们需要移动某行命令的顺序,我们只需要左击鼠标拖动到相应的位置即可。

菜鸟学自动化测试(一)----selenium IDE

 

----//录制我们的第一个脚本

我们的录制流程:

用火狐浏览器,打开一个新的标签-----输入谷歌网址(http://www.google.com.hk/)----在搜索框输入:selenium----点击“google搜索”按钮。 

注:注意开启和关闭selenium IDE面板上的红色圆形的录制按钮。

录制的脚本:

菜鸟学自动化测试(一)----selenium IDE

 

----//调试脚本

1. 设置断点。

  要设置断点,先选择一行命令,点击鼠标右键,在下拉菜单中选择“Toggle Breakpoint”命令,点击“运行”按钮,脚本会运行到断点处停止。用过myecilpse的debug功能来调试脚本的同学懂的!

菜鸟学自动化测试(一)----selenium IDE

2. 通过页面源代码来调试脚本

  很多情况下,调试自动化测试案例都离不开查看页面源代码,我们可以借助firefox的firebug工具,关于firebug的安装(浏览器菜单栏---工具---查看组件---搜索firebug---安装并重启浏览器即可)。

如:我们不确定或想获得谷歌搜索按钮的属性。在按钮上右击---查看元素

菜鸟学自动化测试(一)----selenium IDE

在浏览器下方打开的firebug工具里面,就可以查看按钮代码了。

菜鸟学自动化测试(一)----selenium IDE

 

3. 定位辅助

  当selenium IDE录制脚本时,它会存储额外的信息,支持用户挑选其他格式的定位器来代替默认格式的定位器,这种特殊性对于学习定位器很有用。

菜鸟学自动化测试(一)----selenium IDE

我们可以选择其他的命令来代替“name=btnG” 命令,当然,脚本依然是可以运行的。

关于 selenium IDE一些基础的东西就将这些。下一篇内容在准备中。


推荐阅读
  • 本文详细介绍了SQL日志收缩的方法,包括截断日志和删除不需要的旧日志记录。通过备份日志和使用DBCC SHRINKFILE命令可以实现日志的收缩。同时,还介绍了截断日志的原理和注意事项,包括不能截断事务日志的活动部分和MinLSN的确定方法。通过本文的方法,可以有效减小逻辑日志的大小,提高数据库的性能。 ... [详细]
  • 在本教程中,我们将看到如何使用FLASK制作第一个用于机器学习模型的RESTAPI。我们将从创建机器学习模型开始。然后,我们将看到使用Flask创建AP ... [详细]
  • 如何实现织梦DedeCms全站伪静态
    本文介绍了如何通过修改织梦DedeCms源代码来实现全站伪静态,以提高管理和SEO效果。全站伪静态可以避免重复URL的问题,同时通过使用mod_rewrite伪静态模块和.htaccess正则表达式,可以更好地适应搜索引擎的需求。文章还提到了一些相关的技术和工具,如Ubuntu、qt编程、tomcat端口、爬虫、php request根目录等。 ... [详细]
  • Nginx使用AWStats日志分析的步骤及注意事项
    本文介绍了在Centos7操作系统上使用Nginx和AWStats进行日志分析的步骤和注意事项。通过AWStats可以统计网站的访问量、IP地址、操作系统、浏览器等信息,并提供精确到每月、每日、每小时的数据。在部署AWStats之前需要确认服务器上已经安装了Perl环境,并进行DNS解析。 ... [详细]
  • GetWindowLong函数
    今天在看一个代码里头写了GetWindowLong(hwnd,0),我当时就有点费解,靠,上网搜索函数原型说明,死活找不到第 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • Java序列化对象传给PHP的方法及原理解析
    本文介绍了Java序列化对象传给PHP的方法及原理,包括Java对象传递的方式、序列化的方式、PHP中的序列化用法介绍、Java是否能反序列化PHP的数据、Java序列化的原理以及解决Java序列化中的问题。同时还解释了序列化的概念和作用,以及代码执行序列化所需要的权限。最后指出,序列化会将对象实例的所有字段都进行序列化,使得数据能够被表示为实例的序列化数据,但只有能够解释该格式的代码才能够确定数据的内容。 ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • 本文介绍了如何使用python从列表中删除所有的零,并将结果以列表形式输出,同时提供了示例格式。 ... [详细]
  • 本文介绍了在使用Python中的aiohttp模块模拟服务器时出现的连接失败问题,并提供了相应的解决方法。文章中详细说明了出错的代码以及相关的软件版本和环境信息,同时也提到了相关的警告信息和函数的替代方案。通过阅读本文,读者可以了解到如何解决Python连接服务器失败的问题,并对aiohttp模块有更深入的了解。 ... [详细]
  • 本文介绍了南邮ctf-web的writeup,包括签到题和md5 collision。在CTF比赛和渗透测试中,可以通过查看源代码、代码注释、页面隐藏元素、超链接和HTTP响应头部来寻找flag或提示信息。利用PHP弱类型,可以发现md5('QNKCDZO')='0e830400451993494058024219903391'和md5('240610708')='0e462097431906509019562988736854'。 ... [详细]
  • 数据库技术:execute immediate
    首先在这里发发牢骚,指责下那些刻板的书写方式,不考虑读者理不理解,感觉就是给专业人员用来复习用的一样,没有前戏,直接就高潮,实在受不了!没基础或基础差的完全不知道发生了什么,一脸懵 ... [详细]
  • PHP图片截取方法及应用实例
    本文介绍了使用PHP动态切割JPEG图片的方法,并提供了应用实例,包括截取视频图、提取文章内容中的图片地址、裁切图片等问题。详细介绍了相关的PHP函数和参数的使用,以及图片切割的具体步骤。同时,还提供了一些注意事项和优化建议。通过本文的学习,读者可以掌握PHP图片截取的技巧,实现自己的需求。 ... [详细]
author-avatar
我心飞翔
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有