今天看《编写可维护的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. springcloud12-spring cloud stream

    1.基础说明 官网:https://spring.io/projects/spring-cloud-stream#overview   文档:https://docs.spring.io/spring ...

  2. rt-thread模糊到清晰系列: ipc.c

    #include <rtthread.h> #include <rthw.h> #ifdef RT_USING_HOOK extern void (*rt_object_try ...

  3. LOJ 数列分块入门 8

    \(\text{Solution}\) 一看有区间赋值直接上 \(ODT\) \(\text{Code}\) #include <cstdio> #include <iostream ...

  4. FreeFileSync:开源的文件同步工具 | Linux 中国

    转载知乎: https://zhuanlan.zhihu.com/p/194778373

  5. Ubuntu18.04安装教程

    转载csdn: Ubuntu18.04安装教程_Sunshine的博客-CSDN博客_ubuntu安装教程

  6. STM32L4 Keil ST-Link 连接失败

    ST-LINK 连接失败的因素,以我个人的经历而言有两种:一个是驱动问题,一个是插线问题.连接正常的情况如下图所示,SWDIO 能显示你的设备信息: 注意使用 SW 端口,JTAG 端口导致无法识别设 ...

  7. Xilinx URAM使用说明 UG573

    UltraRAM Resources UltraRAM Summary UltraRAM 是单时钟.双端口.同步存储器,可用于 UltraScale+ 器件.由于 UltraRAM 与柱状(colum ...

  8. mybatis:自定义映射关系resultMap

    创建表t_emp 定义实体类 package org.example.entity; public class Emp { private Integer empId; private String ...

  9. 时间戳转换为yyyy-MM-dd格式

    原文链接https://blog.csdn.net/hu104160112/article/details/111167033

  10. docker swarm集群安装使用

    1.安装master docker swarm init --advertise-addr 10.98.10.186 Swarm initialized: current node (qemrm3oq ...