今天看《编写可维护的JavaScript》的时候有一章是专门讲 Selenium 对 JavaScript 进行自动化测试的。 在了解了 Selenium 的强大之后,动手试验了一下 firefox 中的 Selenium IDE,还是挺给力的说,在此记录下。

什么是 Selenium IDE?

Selenium IDE:一个Firefox插件,可以录制用户的基本操作,生成测试用例。 可以运行这些测试用例在浏览器里回放,可将测试用例转换为其他语言的自动化脚本。

了解了概念之后,我们来开始神奇的 Selenium IDE 之旅吧。

安装 Selenium IDE

1. 下载:http://docs.seleniumhq.org/download/ (额,貌似被墙了,从这里下吧)
2. 直接安装,或者拖动 xpi 文件到 firefox 完成安装~
3. 重启 firefox,查看工具发现已经多了 Selenium IDE 菜单,证明我们已经安装成功了~

怎么使用?

1. 打开迪备服务器界面,点击菜单中的 Selenium IDE

2. 点击 Recording 开始录制事件(假如状态已经开始录制了,不用再点开始)

3. 在界面中依次输入用户名、密码,点击登录按钮,登录成功后,再次点击录制按钮关闭录制
4. 可以看到已经自动生成了事件了

我们先看看这里命令的含义(大概了解下就OK了,不用记),很容易理解的:

1) open(url)

  • 在浏览器中打开URL,可以接受相对和绝对路径两种形式
  • 注意:该URL必须在与浏览器相同的安全限定范围之内

2) type(inputLocator, value)

  • 模拟人手的输入过程,往指定的input中输入值
  • 也适合给复选和单选框赋值

3) click(elementLocator)

  • 点击连接、按钮、复选和单选框
  • 如果点击后需要等待响应,则用 "clickAndWait"
  • 如果是需要经过 JavaScript 的 alert 或 confirm 对话框后才能继续操作,则需要调用 verify 或 assert 来告诉 Selenium 你期望对对话框进行什么操作。
5. 我们发现最后一项 assertAlert 是指对 alert 的处理,在这里我们并不需要,删除。并将该测试用例保存为 login。
6. 退出登录,并将速度调整为 normal,点击 play current test case,可以发现已经登录成功了!

7. 最后,按照同样的方法(试试看,很简单的)对注册用户也进行了自动化注册,并保存为 register,那么就可以快速的根据 test case 的名称进行自动化测试了。


一点想法:

Selenium IDE 只能在 firefox 中使用,那么其他浏览器就无法使用了。 查看生成的文件发现格式是 html 代码,那么是否可以对录制的事件进行转为为其他语言(如 nodejs、python), 然后通过 web 后台服务器进行处理,生成相对应的界面管理,从而就可以指定某个测试用例(汇集起来)在某个浏览器(IE、chrome)启动,并 进行自动化测试呢?未完待续吧...

firefox 利用 Selenium IDE 对 DBackup 进行自动化测试的更多相关文章

  1. 在firefox安装Selenium IDE

    1.打开地址:https://addons.mozilla.org/en-US/firefox/addon/selenium-ide/: 2.点击Add to Firefox: 3.打开Firefox ...

  2. selenium IDE & Remote Control & Webdriver

    一直忘记写selenium的开始学习的过程,今天趁五一,天气有雨,写下这文章 1.进入selnium官网,了解selenium1,2,grid的区别.下载c#相关的包(使用c#的人非常少) 2.使用I ...

  3. 【Selenium】4.创建你的第一个Selenium IDE脚本

    http://newtours.demoaut.com/ 这个网站将会用来作为我们测试的网址. 通过录制来创建一个脚本 让我们来用最普遍的方法——录制来创建一个脚本.然后,我们将会用回放的功能来执行录 ...

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

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

  5. 利用selenium Server实现IE firefox 和 chrome兼容性测试

    本文的主题是基于Selenium Server,使用 Java 语言编写网页交互流程, 实现多浏览器(IE Firefox Chrome)兼容性测试,为使用纪要. Selenium Selenium是 ...

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

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

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

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

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

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

  9. 《Selenium自动化测试实战:基于Python》之 Selenium IDE插件的安装与使用

    第3章  Selenium IDE插件的安装与使用 京东:https://item.jd.com/13123910.html 当当:http://product.dangdang.com/292045 ...

  10. firefox上安装selenium ide失败

    Selenium 初学者第一步: 最近在学习selenium,但是在安装的时候遇到了问题.我是直接在firefox安装的Selenium IDE ,虽然下载安装之后存在于扩展中,但是工具栏里并没有显示 ...

随机推荐

  1. 四、流程控制和break、continue、range函数的讲解

    目录 一.流程控制理论和必备基础知识 理论: 必备基础知识: break.continue的用法: 二.流程控制之分支结构 if if...else if...elif...else if的嵌套使用 ...

  2. [​DuckDB] 多核算子并行的源码解析

    DuckDB 是近年来颇受关注的OLAP数据库,号称是OLAP领域的SQLite,以精巧简单,性能优异而著称.笔者前段时间在调研Doris的Pipeline的算子并行方案,而DuckDB基于论文< ...

  3. 项目与自身毕设对比整理规划6 330 done

    3.30 没用呢- - 功夫不负有心人啊啊啊啊啊啊啊啊啊啊啊啊啊啊 成功了- - 但是很可恶 需要把数据返回然后放在那个文件里面才可以 现在就是问题就是返回数据的时候需要把这个文件存成数据接口 fin ...

  4. JavaScript 中的 apply、call、bind

    在 JavaScript 中,apply.call.bind 是三个与函数调用相关的方法,它们都允许你在调用函数时手动设置函数的上下文(即 this 指向). 1.apply 方法:apply 方法允 ...

  5. 【CTO变形记】整体系统思维-从现象到本质

    前言:我们的⼤脑⾥的认知不是⼀块⽩板,⽽是写满着密密麻麻对这个世界形成的各种观念.信念.塞满了对事物的各个表象,我们脑中的表象世界,对应着外部世界的各种事物. 如果感觉本篇看起来有点不适应,可以看看之 ...

  6. js根据某个字段进行分组

    分组前数据: [ {"f1":"q","f2":"w","f3":"e",&qu ...

  7. vue .sync的理解

    假如父组件传给子组件的值,子组件接受之后,想要改变父组件传过来的值,就可以使用sync .sync是vue中用于实现简单的"双向绑定"的语法糖,在平时的开发中是非常使用的. vue ...

  8. ClickHouse(13)ClickHouse合并树MergeTree家族表引擎之CollapsingMergeTree详细解析

    目录 建表 折叠 数据 算法 资料分享 参考文章 该引擎继承于MergeTree,并在数据块合并算法中添加了折叠行的逻辑.CollapsingMergeTree会异步的删除(折叠)这些除了特定列Sig ...

  9. LeetCode算法训练-贪心算法 455.分发饼干 376. 摆动序列 53. 最大子序和

    欢迎关注个人公众号:爱喝可可牛奶 LeetCode算法训练-贪心算法 455.分发饼干 376. 摆动序列 53. 最大子序和 前置知识 贪心算法核心是找局部最优解,通过局部最优推导出全局最优 Lee ...

  10. react的useRef

    在使用RN动画的时候,看到这样的代码: const App = () => { const fadeAnim = useRef(new Animated.Value(0)).current; / ...