浏览器

  • 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安装

Selenium打开运行

  • 工具栏——>Selenium IDE
  • 直接点击菜单栏Selenium 图标
步骤
  1. 输入测试 Base URL
  2. 打开录制按钮
  3. 在浏览器界面进行相关操作
  4. 回放录制的操作(注意:回放时浏览器一定要处于打开状态)
  5. 保存测试脚本
导入已保存的脚本

文件——> 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 自动化测试的更多相关文章

  1. 测试那些事儿—selenium自动化实战之登录验证码处理

    登陆时经常出现验证码自动化测试如何处理呢? 一般有如下几种处理思路: 1.通过接口请求,拿到对应验证码信息 2.让开发配合把验证码改成万能验证码 3.注入cookies 如何通过注入cookies的方 ...

  2. 开源Web自动化测试工具Selenium IDE

    Selenium IDE(也有简写SIDE的)是一款开源的Web自动化测试工具,它实现了测试用例的录制与回放. Selenium IDE目前版本为 3.6 系列,支持跨浏览器运行,所以IDE的UI从原 ...

  3. selenium IDE使用-1

    selenium 硒 Mercury汞,外国人喜欢取这化学的名字 一.selenium概述 1.selenium是开源免费的,针对web应用程序功能自动化测试的工作. 2.做功能自动化的原因:回归测试 ...

  4. 自动化测试辅助工具(Selenium IDE等)

    本随表目录 Selenium IDE安装和使用 FireBug安装和使用 FirePath安装和使用   Selenium IDE安装 方式一:打开Firefox-->添加组件-->搜索出 ...

  5. selenium IDE测试中的坑

    selenium IDE工具是firefox自带的一个网页自动化测试工具,因为它是IDE所以它很方便使用,但也因为它是IDE所以它有那么些坑. 问题:selenium回放中timeout问题 网页的打 ...

  6. 自动化测试-selenium IDE使用

    selenium IDE结合浏览器提供脚本的录制,回放以及编辑脚本功能,以及元素的定位,可以使用selenium IDE将录制的脚本生成相应的带单元测试框架的自动化测试脚本. selenium具有录制 ...

  7. 自动化测试模型 Selenium IDE Selenium Gird2

    1.线性测试 每个测试脚本相对独立,且不产生其他依赖与调用,其实就是单纯的来模拟用户完整的 操作场景.前一篇所写的测试脚本就属于线性测试. 优点:每个脚本完整且独立 缺点:测试用例的开发与维护成本高 ...

  8. Selenium IDE 测试

    Selenium IDE 测试 调试是为了发现和修复测试脚本,任何脚本开发的共同步骤是错误的处理.为了使这一过程更加稳固,我们可以使用Selenium IDE的一个插件叫“Power Debugger ...

  9. Selenium IDE测试创建

    Selenium IDE 测试创建 涉及使用IDE Selenium创建测试,如下面的步骤 记录和测试添加命令 保存测试记录 保存测试程序 执行测试记录 在测试中记录和添加命令 为了演示目的,我们将利 ...

随机推荐

  1. oracle存储过程出现ORA-01403: 未找到数据 问题解决方法

    这段时间在做一个业务,需要用到存储过程处理业务逻辑,但是出现一个ORA-01403: 未找到数据 问题, 那么这个应该如何解决这个问题 declare mixType integer; begin - ...

  2. JS数组映射保存数据-场景

    开发遇到,写个随笔,以防我的金鱼记忆 场景:一个页面从后台拿到20条数据,把他们展现在页面上,当点击某一个item时,需要展示这个item的详情,通常不会去把页面调走,就在本页面通过 display: ...

  3. C语言采用socket实现http post方式上传json数据

    1.按照HTTP协议发送请求: http POST 报文格式 http 报文是面向文本的. 报文分为:请求报文和响应报文 请求报文由:请求行,请求头部,空行和请求数据四个部分组成. <1.请求行 ...

  4. HDU2138(Miller-Rabin素数检测)

    最近在看RSA,找到一个一个大素数是好多加密算法的关键一步,而大素数无法直接构造,一般情况下都是生成一个随机数然后判断是不是素数.判断是否是素数的方法有好多,有的能够准确判断,比如可以直接因式分解(R ...

  5. JavaWeb开发流程

  6. 基于.NET平台常用的框架整理<转载>

    转载来自:http://www.cnblogs.com/hgmyz/p/5313983.html 基于.NET平台常用的框架整理   自从学习.NET以来,优雅的编程风格,极度简单的可扩展性,足够强大 ...

  7. [c++]关于strcpy函数溢出解决方案

    必须包含的头文件:<string.h> 可改写成安全函数strcpy_s 找到[项目属性],点击[C++]里的[预处理器],对[预处理器]进行编辑,在里面加入一段代码:_CRT_SECUR ...

  8. hdu1011(树形背包)(提供一个特殊样例)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1011 Starship Troopers Time Limit: 10000/5000 MS (Jav ...

  9. ionic iphone下的问题

    1. nsunknownkeyexception Terminating app due to uncaught exception 'NSUnknownKeyException', reason: ...

  10. 《贝贝GO》服务条款

    服务条款 一.服务条款的确认与接收 1.贝贝GO客户端软件(以下简称“本软件”)各项电子服务的所有权和运作权归属于“东莞市山水信息技术有限公司”(以下称“本公司”)所有,本软件提供的服务将完全按照其发 ...