资源推荐:
视频资源: 软件测试相关系列视频
社区资源: 自动化测试交流群
Selenium IDE简介
Selenium IDE(Integrated Development Environment),是Selenium工具套件中最简单的工具,它可以快速的通过录制回放功能创建测试脚本,这种特性类似于QTP,而且它的安装和使用都非常的简单。
由于Selenium IDE功能简单,适用范围局限,很多情况下都被当做原型工具使用,而不会用作开发和维护复杂测试场景的解决方案。
虽然学习Selenium IDE不需要什么其他知识基础,但是至少你需要熟悉HTML,Javascript,和DOM(Document Object Model),通过这些知识可以更多的发挥该工具(Selenium IDE)的潜能。比如当我们进入关于Selenese命令“runScript”阶段学习时,就需要使用到javascript知识。
当使用Selenium IDE创建测试脚本时,Selenium IDE支持命令自动完成模式,这个特性主要是为了两个目的:
-
帮助测试人员更快的完成命令输入
-
限制用户输入无效的Selenese命令
Selenium IDE特性
菜单栏
菜单栏位于IDE的最顶部,最常用的菜单包括:File,Edit和Options菜单。
文件菜单
-
文件菜单包含创建,打开,保存,关闭测试相关选项
-
Tests保存为HTML格式
-
这里有最有用的选项“Export”,它允许将Selenese脚本保存为支持Selenium RC 和 Selenium WebDriver支持的测试脚本。
-
“Export Test Case As…”,可以到处当前的脚本。
-
“Export Test Suite As…”,当初当前测试套件所有脚本。
-
需要注意的是,自从Selenium IDE V1.9.1,测试脚本只能保存到如下格式的文件中。
-
.cs (C# source code)
-
.java (Java source code)
-
.py (Python source code)
-
.rb (Ruby source code)
Edit菜单选项
-
它包含常用的选项: Undo, Redo, Cut, Copy, Paste, Delete, and Select All.
-
这里有两个最重要的选项: "Insert New Command" 和 "Insert New Comment".
-
最新插入的命令或注释会放置在当前选择命令行的上方
-
命令会被黑色字体标记
-
注释会被紫色字体标记
Options 菜单
Options中提供给用户扩展接口,以及各种各样的Selenium IDE相关配置。
我们先看下Options和 “Clipboard Format”选项:
-
Clipboard Format选项允许从IDE命令行编辑器复制命令并粘贴成为指定的代码片段
-
粘贴成为目标代码片段格式取决于在此所选择的格式
-
HTML是默认格式
-
Default Timeout Value.这个时间指的是等待某个元素在页面中出现 或 等待某元素变为可访问状态的等待时间,超时后会抛出相应的错误信息,这里默认超时时间是30000ms
-
Selenium IDE extensions.在这里可以对Selenium IDE特性进行扩展,可以通过访问“http://addons.mozilla.org/en-US/firefox/”,并使用关键字“Selenium”搜索相关可用的扩展。
-
Remember base URL. 在此可以设置使Selenium IDE每次启动时记住上次使用的Base Url,如果反选这个选项的话,IDE每次启动时,将会保持Base Url空白。
-
Autostart record. 选择该选项,每次重启Selenium IDE时,都会默认开启录制状态。
-
Locator builders. 在这里可以指定录制脚本时使用locators的顺序,locators就是元素定位选择器,在如下配置的情况下,当你点击一个带有ID的元素时,IDE会优先使用id locator作为定位元素的选择器,如果目标元素不存在ID时,Selenium会寻找name属性作为第二选择,依次类推直到找到可用的元素定位选择器。
-
Base URL有一个下拉菜单列表,它会记录所有先前访问的历史。
-
通过Selenese命令“open”,可以将浏览器导航到指定的url所指页面。
-
在本教程中我们会使用“http://newtours.demoaut.com”作为Base URL,这是HP为用于基于测试目的维护的web系统,这个web系统中包含所有本教程需要使用到的页面元素。
-
使用Base URL时,对于访问基于相对路径的页面时非常有用,比如这里指定Base URL的值为“http://newtours.demoaut.com”,可以使用Selenese “open”命令,并指定Target值为“sign-up”,Selenium IDE将会直接将浏览器导航到“sign-up”页面,如下:
比如,当你选择的代码格式为“Java/JUnit 4/WebDriver”时,每个从Selenium IDE中复制的命令行会被粘贴成为java code.
Selenium IDE Options对话框
在菜单栏上点击“Options > Options…”启动Options对话框,Options中包含很多配置信息,我们将会选择比较重要的进行解释。
Base URL 栏
Toolbar
通过这个控件控制脚本回放速度 | |
开始/结束录制会话,开启后会将与浏览器的所有操作录制成Selenese命令,并写入到Editor面板中。 | |
执行整个测试套件,将会顺序的执行测试面板中所有的测试案例。 | |
执行当前测试案例,仅会执行当前测试面板中被选中的测试脚本。 | |
暂停/恢复当前正在回放的测试脚本。 | |
单步调试,可以逐步执行测试脚本的命令,用于调试使用。 | |
应用汇总策略,通过rollup关键字将多个命令合并为一个,需要用户自定义扩展。 |
测试用例面板
-
同一时刻,可以在测试面板中打开多个测试脚本。
-
当打开的目标是一个test suite时,测试面板会加载当前测试套件下所有测试脚本列表。
-
测试用例名称标注加粗字样的为当前选中的测试脚本。
-
回放之后,每个测试脚本名称会有字体背景着色,表示执行成功或失败,绿色表示“成功”,红色表示“失败”。
-
测试用例面板底部显示的是运行测试的总数及失败的个数。
Editor
Editor中包含两个视图窗口:Table View 和 Source View.
Table
-
Table视图在大多数情况下是使用最频繁的。
-
可以在这里创建和修改Selenese命令。
-
脚本回放之后,每个执行步骤都会被着色。
-
创建测试步骤,可以在“Command”文本框中输入命令名称
-
在键入命令时,文本框下拉列表会显示所有可以匹配到的命令集合。
-
Target参数通常是一个元素定位器,或者作为参数值等,而Value通常会是参数变量名,输入数据等。
Source 视图
-
source视图通过HTML格式展示测试步骤。
-
可以在此视图中创建、编辑Selenese命令。
Log 面板
log面板会实时显示测试执行消息,实时更新日志并通知Selenium正在做的事情。
Logs被归类为4中类别
Debug – 默认情况下,debug消息不会被显示,这些debug信息主要是涉及到Selenium运行时使用到的技术相关信息,比如,加载了一个特定的模块,一个特定的函数被调用过,加载了一个外部js文件等等。
Info – info消息会告诉使用者Selenium IDE都执行了哪些Selenese命令。
Warn – 某些特殊情况下,使用Selenese不当或环境等某种原因,会提示Warn消息。
Error – 当Selenese命令执行失败时,会有error消息,比如不满足“verify”or "assert" 相关命令的条件时,也会有Error消息产生。
Log信息可以通过类型进行过滤,比如选择“Error”选项时,log面板中只会显示error相关的信息。
Reference 窗口(灰常有用)
Reference窗口中显示了当前选中的Selenese命令相关介绍,同时也对当前command的locator和value进行描述。
UI-Element窗口
UI-Element对于selenium用户来说,相比较而言是较高级的话题,它使用JSON(Javascript Object Notation)来定义页面、页面元素的映射结构,我们可以在Selenium IDE中“Help”选项下找到“UI Element Documentation”,这里包含UI-Element更多详细的内容。
如下是一个使用UI-Element的一个例子。
Rollup窗口
Rollup允许将一组Selenese命令合并到一个步骤中,一组selenese命令称为“rollup”,它严重的依赖于javascrip及“UI-Element”概念,类似于编程语言中的function。
Rollup是可以重用的,一个“rollup”可以在测试脚本中多次使用,由于“rollup”是一系列命令的集合,所以它可以缩减测试脚本篇幅。
如下展示了“rollup”窗口内容
汇总
-
Selenium IDE是整个套件里最简单的。
-
仅仅被用作一个原型工具
-
需要JS和HTML的知识。Rollup是一些可重用的命令集合。Locators是你告诉IDE怎么找到元素的描述。
-
Firebug是获取locator值的工具。
-
菜单栏用来创建,修改,导出RC,WebDriver可以识别的格式的测试用例。
-
Selense命令的默认格式是HTML。
-
选项菜单提供了关于IDE更多配置。
-
Base URL基址在访问相对地址比较有用。
-
测试用例面板显示打开的case和关于测试结果的汇总。
-
Editor编辑器提供了修改脚本的入口
-
表格试图以表格形式等你键入Command,target,value。而代码视图用HTML来显示你的脚本。
-
日志和参考页面提供了一些执行case可能需要的信息。
-
UI-Element和Rollup是给比较熟悉Selenium工具的用户使用的。需要相当的JS编程经验。
-
UI-Element允许我们使用json来匹配UI元素。
点击链接加入群【悦分享测试联盟】:https://jq.qq.com/?_wv=1027&k=5DiePik
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/opensource/187320.html