<自动化测试>之<SeleniumIDE使用详解 >
最近在做些简单的自动化理解培训,以繁化简,就写了一节selenium ide的使用教程,在这里分享给刚入门的朋友
自动化插件工具介绍:
这是一款基于Firefox的自动化录制插件,UI界面化操作,无需编程语言基础,操作简单快捷,满足调试过程中的单条,多条case执行,具有断点功能,和精准的断言,录制后的脚本进行转译后可以在python+selenium自动化框架中运行,轻量高效.
一IDE面板
基于firefox安装后的插件面板如下所示

1.文件:创建、打开和保存测试案例和测试案例集.编辑:复制、粘贴、删除、撤销和选择测试案例中的所有命令.
2.用来填写被测网站的地址.
3.速度控制:控制案例的运行速度.
4.运行所有:运行一个测试案例集中的所有案例.
5.运行:运行当前选定的测试案例.
6.暂停/恢复:暂停和恢复测试案例执行.
7.单步:可以运行一个案例中的一行命令.
8.录制:点击之后,开始记录你对浏览器的操作.
9.案例集列表.
10.测试脚本;table标签:用表格形式展现命令及参数.source标签:用原始方式展现,默认是HTML语言格式,也可以用其他语言展示.
11.查看脚本运行通过/失败的个数.
12.当选中前命令对应参数.
13.日志/参考/UI元素/Rollup
日志:当你运行测试时,错误和信息将会自定显示.
参考:当在表格中输入和编辑selenese命令时,面板中会显示对应的参考文档.
二 文本行编辑命令
录制的脚本不是100%符合的需求的,所以,编辑录制的脚本是必不可少的工作.
1 编辑一行命令或注释.
在Table标签下选中某一行命令,命令由command、Target、value三部分组成.可以对这三部分内容那进行编辑.
2 插入命令.
在某一条命令上右击,选择“insert new command”命令,就可以插入一个空白,然后对空白行进程编辑.

3 插入注解
以上面同样的方式右击选择“insert new comment”命令插入注解空白行,本行内容不被执行,可以帮助更好的理解脚本,插入的内容以紫色字体显示.

4 移动命令或注解
有时需要移动某行命令的顺序,只需要左击鼠标拖动到相应的位置即可.

三 录制脚本展示

1.录制流程:
注:注意开启和关闭selenium IDE面板上的红色圆形的录制按钮.

2.调试脚本
2.1 设置断点.
要设置断点,先选择一行命令,点击鼠标右键,在下拉菜单中选择“Toggle Breakpoint”命令,点击“运行”按钮,脚本会运行到断点处停止.用过myecilpse的debug功能来调试脚本的同学懂的!

2.2 通过页面源代码来调试脚本
很多情况下,调试自动化测试案例都离不开查看页面源代码,可以借助firefox的firebug工具,关于firebug的安装(浏览器菜单栏---工具---查看组件---搜索firebug---安装并重启浏览器即可).
如:不确定或想获得谷歌搜索按钮的属性.在按钮上右击---查看元素

在浏览器下方打开的firebug工具里面,就可以查看按钮代码了.

2.3 定位辅助
当录制脚本时,它会存储额外的信息,支持用户挑选其他格式的定位器来代替默认格式的定位器,这种特殊性对于学习定位器很有用.

可以选择其他的命令来代替“name=btnG” 命令,当然,脚本依然是可以运行的.
<自动化测试>之<SeleniumIDE使用详解 >的更多相关文章
- 彻底弄清c标准库中string.h里的常用函数用法
在我们平常写的c/c++程序,一些算法题中,我们常常会用到c标准库中string.h文件中的函数,这些函数主要用于处理内存,字符串相关操作,是很有用的工具函数.而且有些时候,在笔试或面试中也会出现让你 ...
- 走进C标准库(8)——"string.h"中函数的实现相关字符串操作函数
我的strcat: char *strcat(char *dest,char *src) { char * reval = dest; while(*dest) dest++; while(*src) ...
- 走进C标准库(3)——"stdio.h"中的getc和ungetc
接前文. 再来看看getc和ungetc的实现.在看这两个函数的实现之前,我们先来想一想这两个函数分别需要做的工作. int getc(FILE *stream) 说明:函数getc从stream指向 ...
- 走进C标准库(2)——"stdio.h"中的fopen函数
其他的库文件看起来没有什么实现层面的知识可以探究的,所以,直接来看stdio.h. 1.茶余饭后的杂谈,有趣的历史 在过去的几十年中,独立于设备的输入输出模型得到了飞速的发展,标准C从这个改善的模型中 ...
- 走进C标准库(1)——assert.h,ctype.h
默默觉得原来的阅读笔记的名字太土了,改了个名字,叫做走进C标准库. 自己就是菜鸟一只,第一次具体看C标准库,文章参杂了对<the standard C library>的阅读和对源码的一些 ...
- C 非标准库(conio.h)
所谓的 C 标准库(C standard library),是指在 ISO C 或者 POSIX 标准中定义的: POSIX is a superset(超集) of the standard C l ...
- 走进C标准库(4)——"stdio.h"中的putc
花了点时间把园子弄得好看了点,现在继续. 函数名: putc 功 能: 输出一字符到指定流中 用 法: int putc(int ch, FILE *stream); #define _putc_ ...
- 走进C标准库(5)——"stdio.h"中的其他部分函数
函数介绍来自:http://ganquan.info/standard-c/ 函数名: freopen 功 能: 替换一个流 用 法: FILE *freopen(char *filename, ...
- 走进C标准库(6)——"string.h"中函数的实现memchr
我写的memchr: void *memchr(const void *buf, char ch, unsigned count){ unsigned ; while(*(buf++) != ch & ...
- 走进C标准库(7)——"string.h"中函数的实现memcmp,memcpy,memmove,memset
我的memcmp: int memcmp(void *buf1, void *buf2, unsigned int count){ int reval; while(count && ...
随机推荐
- Codeforces 803E--Roma and Poker (DP)
原题链接:http://codeforces.com/problemset/problem/803/E 题意:给一个n长度的字符串,其中'?'可以替换成'D'.'W'.'L'中的任意一种,'D'等价于 ...
- [杂题]:group(状压DP+轮廓线)
题目描述 $pure$在玩一个战略类游戏.现在有一个士兵方阵,每行有若干士兵,每个士兵属于某个兵种.行的顺序不可改变,且每一行中士兵的顺序也不可改变.但由于每一行都有$C$个位置($C$不小于任一行的 ...
- [CSP-S模拟测试]:biology(DP)
题目传送门(内部题23) 输入格式 第一行有$2$个整数$n,m$.接下来有$n$行,每行$m$个整数,表示$a$数组.接下来有$n$行,每行$m$个整数,表示$b$数组. 输出格式 一行一个整数表示 ...
- @encode关键字
@encode() 为了更好的互操作性,Objective-C 的数据类型,甚至自定义类型.函数或方法的元类型,都可以使用 ASCII 编码.@encode(aType) 可以返回该类型的 C 字符串 ...
- python input() 与raw_input()
使用input和raw_input都可以读取控制台的输入,但是input和raw_input在处理数字时是有区别的1:纯数字输入 当输入为纯数字时 input返回的是数值类型,如int,float ...
- idea中git stash--解决pull冲突或切换分支问题
场景1:pull代码时提示冲突,本地代码和远程代码有冲突 场景2:当切换分支时,当前分支的代码又不想commit 这两种场景可以使用git stash来解决,将当前未commit的代码暂存起来. 操作 ...
- Java学习之多态---类成员变化
类成员 一.成员变量 编译时:变量(f)所属类(Fu)中是否有成员变量,有:编译成功,没有:编译失败 运行时:变量(f)所属类(Fu)中是否有成员变量,运行该类(Fu)中的成员变量 class Fu ...
- Unzip 解压报错
$ jar xvf pcre-8.10.zip 如果出现 jar:Command not found 要用yum下载 $ yum -y install java-1.6.0-openjdk-d ...
- [Flask] 异步非阻塞IO实现
Flask默认是不支持非阻塞IO的,表现为: 当 请求1未完成之前,请求2是需要等待处理状态,效率非常低. 在flask中非阻塞实现可以由2种: 启用flask多线程机制 # Flask from f ...
- 2.tensorflow——Softmax回归
import numpy as np import tensorflow as tf import matplotlib.pyplot as plt from tensorflow.examples. ...