selenium

一、目标
1、涉及技术
a、html标签


b、css样式


c、java-面向对象的思想:继承、多态、封装


d、seleniumAPI(API:应用程序编程接口)


e、TestNG(执行测试用例)


f、maven/Ant(自动构建项目、发布项目)


2、目标
web项目---selenium---独立功能脚本+业务流程脚本+框架搭建与使用






二、项目流程与测试阶段划分
1、需求:需求评审    
a、静态测试


2、设计:技术评审   
a、静态测试


3、编程:开发编程


a、静态测试
1)代码走查


b、动态测试
1)单元测试  独立功能的代码
2)集成测试  模块间、功能之间相互调用
3)系统测试  功能、非功能、接口






三、分层自动化测试
1、国外
a、自动化单元测试 70%
b、自动化接口测试 20%
c、UI自动化测试   10%


2、国内
a、自动化单元测试  10%
b、自动化接口测试  20%
c、UI自动化测试    70%






四、UI自动化测试的前提
1、手工测试已通过


2、需求稳定


3、脚本可以复用


4、产品、项目周期长






五、selenium工作原理
1、selenium是什么?


a、它是一款自动化测试工具,主要用来做回归测试、验收测试


b、是thoughtworks公司的


2、selenium版本


a、selenium1.0
1)selenium-RC:
将各种语言编写的文件传给selenium-RC
2)selenium-Core:
然后使用selenium-Core的JavaScript命令传递给浏览器,实现对浏览器的各种操作


b、selenium2.0
1)包含selenium1.0的所有功能
2)webdriver:
使用脚本语言---web驱动---调用浏览器---测试应用程序


3、自动化测试工具
a、selenium与QTP区别


b、selenium是开源免费的,QTP是商业版


c、selenium支持java/Python/ruby/php/Perl等,QTP早期的版本只支持vbs


d、selenium支持各种主流的浏览器,QTP不支持Firefox和chrome


e、selenium适用于多系统,而QTP只支持Windows


f、QTP需要与ALM集成,而selenium不需要


g、selenium只能做浏览器测试,QTP则都可以


4、selenium脚本语言如何选择?


a、项目要求,被测试项目的开发语言


b、自动化测试框架的需要


c、取决于测试人员的技术水平


d、插件的支持情况


5、selenium需要的组件


a、selenium-IDE:
1)集成开发环境


b、selenium-Core:
1)核心,最基础的代码


c、selenium-Remote Control:
1)远程控制


d、seleniumAPI:
1)应用程序编程接口


e、selenium WebDriver:
1)web驱动


f、seleniumGrid:
1)提供运行脚本的环境


6、selenium-IDE的使用


a、火狐浏览器
1)安装时,去掉维护更新
2)安装完,打开菜单---选项---高级---更新---不检查更新---确定


b、安装Firefox插件
1)安装selenium-IDE
2)安装firebug
3)步骤:
S1:打开火狐浏览器---打开菜单---附加组件---扩展
S2:直接拖拽插件到浏览器中
a)点击“立即安装”
b)提示“重启浏览器”
S3:一次性重启浏览器


c、安装海盗商城
1)phpwind-new.rar解压到一个非中文的路径:
a)生成一个phpfind文件夹
2)进入解压目录,点击“phpFind.exe”启动两个服务:
a)服务器:
Nginx:
绿色表示成功
标红解决方法:选择其他选项---环境端口检测---检查端口---尝试强制关闭相关进程并启动---服务启动成功后,直接访问网页
3)访问:
前台:http://localhost   用户名:dongfbb   密码123456
后台:http://localhost/index.php?m=admin&c=public&a=longin   用户名:admin  密码:password


d、常见的一些问题
1)首次使用IDE,当回放脚本时,会有一个弹窗提示:
选择:允许加载


2)脚本录制不全,可以补录
把脚本里面前面的步骤执行到某个点,打开IDE上的录制按钮,继续录制即可,录完关闭按钮


3)单步执行通过,连着执行标红
加上时间等待:pause 5000 表示5s


4)打开页面如果输入框有默认数据,如用户名密码
清除之前保存密码的记录:工具---选项---安全---“记住网站密码”去掉勾选,同时清除缓存:Ctrl+shift+delete


5)页面发生跳转(新窗口)
需要修改selectWindows:title=新页面的标题


6)重复执行脚本,提示信息已存在,如:注册
a)到后台把注册成功的用户删除
数据库里删除
网站后台删除
b)修改脚本里的测试数据,如把用户改成不同的


7)回放脚本时:
把火狐浏览器打开


8)调试脚本时用的网页必须是自己重新打开的网页,不是运行脚本打开的页面


e、页面介绍
1)执行速度:
fast/slow


2)运行所有的测试用例集:
play entire test suite


3)运行当前的测试用例:
play current test case


4)在上方插入命令:
insert new command


5)设置断点:
toggle breakpoint


6)从当前点开始执行:
set/clear start point


7)单步执行:
execute this command


8)定位元素、查找元素:
select:定位元素
find:确认是否定位准确


7、小结


a、元素定位的方法
1)name
2)link
3)id
4)css
5)XPath
6)class
7)tagName
8)partialLink


b、断言
1)assertElementPresent:
断言元素存在
2)verifyElementPresent:
校验元素存在
3)waitforElementPresent:
等待+断言
4)clickandwait:
点击并等待
5)verifyTitle:
校验标题
6)assertTitle:
断言标题
7)verifytextpresent:
校验文本存在
8)asserttextpresent:
断言文本存在
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值