测试那些事儿—selenium IDE 自动化测试
浏览器
- Firefox Setup 35.0.1
- 安装完成后设置菜单栏
- 关闭浏览器自动更新
插件配置(必备武器)
- FireBug
Firebug是firefox下的一个扩展,能够调试所有网站语言,如Html,Css等,但FireBug最吸引人的就是javascript调试功能,使用起来非常方便,而且在各种浏览器下都能使用(IE,Firefox,Opera, Safari)。
- FirePath
- HTML元素定位神器。
Selenium IDE简介
Selenium IDE是一个Firefox插件,用于记录和播放用户与浏览器的交互。 使用它来创建简单的脚本或协助进行探索性测试。
Selenium IDE安装
- 1.官网下载插件后本地安装 http://www.seleniumhq.org/download/
- 2.浏览器搜索插件安装
Selenium打开运行
- 工具栏——>Selenium IDE
- 直接点击菜单栏Selenium 图标
步骤
- 输入测试 Base URL
- 打开录制按钮
- 在浏览器界面进行相关操作
- 回放录制的操作(注意:回放时浏览器一定要处于打开状态)
- 保存测试脚本
导入已保存的脚本
文件——> Open——> 选择要导入的脚本
Selenium IDE脚本编辑与操作
1. 编辑一行命令
在Table标签下选中某一行命令,命令由command、Target、value三部分组成。可以对这三部分内容那进行编辑。
2. 插入命令。
在某一条命令上右击,选择“insert new command”命令,就可以插入一个空白,然后对空白行进程编辑。
3. 插入注释
鼠标右击选择“insert new comment”命令插入注解空白行,本行内容不被执行,可以帮助我们更好的理解脚本,插入的内容以紫色字体显示。
4. 移动命令或注解
有时我们需要移动某行命令的顺序,我们只需要左击鼠标拖动到相应的位置即可。
5.删除命令
选择单个或多个命令,然后点击鼠标右键选择“Delete”
6.命令执行
选定要执行的命令点击单个执行按钮即可,注意:有一些命令必须依赖于前面命令的运行结果才能成功执行,否则会导致执行失败。
Selenium IDE常用命令
open(url)命令
(1)作用:打开指定的URL,URL可以为相对或是绝对URL;
(2)Target:要打开的URL;value值为空
- 当Target为空,将打开Base URL中填写的页面;
- 当Target不为空且值为相对路径,将打开Base URL + Target页面。
- 当Target以http://开头时,将忽略Base URL,直接打开Target的网址;
pause(waitTime)
(1)作用:暂停脚本运行
(2)waitTime:等待时间,单位为ms;
goBack()
(1)作用:模拟单击浏览器的后退按钮; (2)由于没有参数,所以Target和Value可不填;
refresh()
(1)作用:刷新当前页;
(2)由于没有参数,所以Target和Value可不填;
windowMaximize()
(1)作用:将当前的窗口最大化,即设置为全屏显示; (2)由于没有参数,所以Target和Value可不填;
click(locator)
(1)作用:单击一个链接、按钮、复选框或单选按钮;
(2)如果该单击事件导致新的页面加载,命令将会加上后缀“AndWait”,即“clickAnd Wait”,或“waitForPageToLoad”命令;
type(locator,value)
(1)作用:向指定输入域中输入指定值;也可为下拉框、复选框和单选框按钮赋值.
(2)Target:元素的定位表达式;
(3)Value:要输入的值;
select(selectLocator,optionLocator)
(1)作用:模拟人工单击下拉列表框;
selectLocator:指向指定选择元素的元素定位器;
optionLocator:选项的选择器(默认为标签);
(2)选项的选择方式两种 label 和Value
- label=文本值,基于选项的文本进行匹配(默认方式),如label=three;
- value=真实值,基于选项的真实值进行匹配,如value=3;
close()
(1)作用:模拟用户单击窗口上的关闭按钮;
(2)由于没有参数,所以Target和Value可不填;
断言与验证
断言
验证应用程序的状态是否同所期望的一致。 常见的断言包括:验证页面内容,如标题是否为X或当前位置是否正确等等。
断言被用于4种模式+5种手段:
Assert
Assert 断言失败时,该测试将终止。
verify
Verify 断言失败时,该测试将继续执行,并将错误记入日显示屏。也就是说允许此单个验证通过。确保应用程序在正确的页面上。提高脚本的伸缩性。
waitfor
Waitfor用于等待某些条件变为真。可用于AJAX应用程序的测试。 如果该条件为真,他们将立即成功执行。如果该条件不为真,则将失败并暂停测试。直到超过当前所设定的超时时间。 一般跟setTimeout时间一起用
store
store 定义变量,可以获取页面的相关元素进行判断。
5种手段:
- Title 获取页面的标题
- Value 获取元素的值
- Text 获取元素文本信息
- Table 获得元素标签
- ElementPresnt 获得当前元素。
断言常用的有:
assertTitle(检查当前页面的title是否正确)
assertValue(检查输入框的值, 单选或复选框的值)
VerifyValue() 验证元素的值。
断言设置方法
1.浏览器页面点击鼠标右键->Show All Available commands->选择具体的断言方式,脚本回自动加载选定的断言命令
2.直接在脚本页面编辑。
测试那些事儿—selenium IDE 自动化测试的更多相关文章
- 测试那些事儿—selenium自动化实战之登录验证码处理
登陆时经常出现验证码自动化测试如何处理呢? 一般有如下几种处理思路: 1.通过接口请求,拿到对应验证码信息 2.让开发配合把验证码改成万能验证码 3.注入cookies 如何通过注入cookies的方 ...
- 开源Web自动化测试工具Selenium IDE
Selenium IDE(也有简写SIDE的)是一款开源的Web自动化测试工具,它实现了测试用例的录制与回放. Selenium IDE目前版本为 3.6 系列,支持跨浏览器运行,所以IDE的UI从原 ...
- selenium IDE使用-1
selenium 硒 Mercury汞,外国人喜欢取这化学的名字 一.selenium概述 1.selenium是开源免费的,针对web应用程序功能自动化测试的工作. 2.做功能自动化的原因:回归测试 ...
- 自动化测试辅助工具(Selenium IDE等)
本随表目录 Selenium IDE安装和使用 FireBug安装和使用 FirePath安装和使用 Selenium IDE安装 方式一:打开Firefox-->添加组件-->搜索出 ...
- selenium IDE测试中的坑
selenium IDE工具是firefox自带的一个网页自动化测试工具,因为它是IDE所以它很方便使用,但也因为它是IDE所以它有那么些坑. 问题:selenium回放中timeout问题 网页的打 ...
- 自动化测试-selenium IDE使用
selenium IDE结合浏览器提供脚本的录制,回放以及编辑脚本功能,以及元素的定位,可以使用selenium IDE将录制的脚本生成相应的带单元测试框架的自动化测试脚本. selenium具有录制 ...
- 自动化测试模型 Selenium IDE Selenium Gird2
1.线性测试 每个测试脚本相对独立,且不产生其他依赖与调用,其实就是单纯的来模拟用户完整的 操作场景.前一篇所写的测试脚本就属于线性测试. 优点:每个脚本完整且独立 缺点:测试用例的开发与维护成本高 ...
- Selenium IDE 测试
Selenium IDE 测试 调试是为了发现和修复测试脚本,任何脚本开发的共同步骤是错误的处理.为了使这一过程更加稳固,我们可以使用Selenium IDE的一个插件叫“Power Debugger ...
- Selenium IDE测试创建
Selenium IDE 测试创建 涉及使用IDE Selenium创建测试,如下面的步骤 记录和测试添加命令 保存测试记录 保存测试程序 执行测试记录 在测试中记录和添加命令 为了演示目的,我们将利 ...
随机推荐
- wifi rate vs mode
- XE 使用记录
project的选项是分编译版本的,debug,release,上层还有一个base 通用的设置值,最好放base里,比如Search path里 自己添加的路径,免得2个环境分别添加.
- C# [Win32] [API] Layered Windows
static void* WndProc(void* hwnd, uint uMsg, void* wParam, void* lParam) { switch (uMsg) { case WM_PA ...
- hibernate @OneToMany等注解设置查询过滤条件
如实体PdOrg对象中有users对象,数据库user表有字段DEL_FLAG(0:删除:1:未删除): private List<User> users= new ArrayList&l ...
- 简易祖玛--canvas
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- jmeter如何链接数据库并拿到相应值用到请求中
很久以前学习了jmeter如何使用数据库连接并请求相应值.jmeter如何上传文件 结果现在忘记了很多...,现在重头学习一遍,所以说 还是边学边记录,那天忘记了 ,自己看看笔记 分步骤来写 1.数据 ...
- L1-060 心理阴影面积
这是一幅心理阴影面积图.我们都以为自己可以匀速前进(图中蓝色直线),而拖延症晚期的我们往往执行的是最后时刻的疯狂赶工(图中的红色折线).由红.蓝线围出的面积,就是我们在做作业时的心理阴影面积. 现给出 ...
- web开发中 代码解决部分IE兼容问题
首先是自己遇到问题: 一套系统,以前的开发asp旧+c#新后台管理扩展.完善后,在2013年前基本无问题,很是畅顺. 其中.到升级了浏览器后.例如ie9以后,则问题出现了. 如图: 这是一个js的 ...
- The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than one time zone.
今天用mysql连接数据库时,出现The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than o ...
- 第一章 Java入门
一.JAVA的特点 简单.面向对象.平台无关.多线程.动态 (平台无关的原因:在操作系统上再提供JRE,只要提供JRE,JAVA编写的软件就能运行) 二.JAVA平台 JAVA SE(标准版).JAV ...