没有合适的资源?快使用搜索试试~ 我知道了~
首页Selenium IDE操作实践
资源详情
资源推荐
-------------------------------------------------第一天分割线-------------------------------------------
一、软件测试流程:
1、需求分析
①用户功能需求分析
②软件功能需求分析
③测试功能需求分析
④环境需求分析
⑤性能需求分析
2、测试策划
①定义、总结测试工作的需求,包括用户、开发对测试工作的需求
②明确项目测试过程中经历的测试阶段,以及各个测试阶段通过的标准、测试类型、
测试采用的工具及技术
③明确项目周期测试中的沟通方式以及沟通方案
④估算项目工作量,根据算法和同类项目比价得出
⑤确定项目测试中需要的资源(如人员数量与技术、硬件资源、工作场地)
3、测试设计
①测试策略设计:
16 种:功能测试,性能测试,压力测试,容量测试,安全性测试,GUI 测试,
可用性测试,安装测试,配置测试,异常测试,备份测试,健壮性测试,文档测试,
在线帮助测试,网络测试,稳定性测试
②测试方案设计:根据测试策略,把测试相关(如软硬件资源、测试范围、测试目
标、采用技术、工具、开始测试时间、完成标准、优先级)整理成文档
③测试用例设计
④自动化测试脚本设计
4、环境搭建
①硬件环境
②软件环境
5、测试执行
6、测试总结
二、自动化测试基础知识:
1、适用项目
①需求变更有计划、变更频率不高的项目,有开发自动化测试脚本的价值
②项目周期长,有开发自动化测试脚步的价值
③评估重复使用自动化测试脚本的过程和时长,确定是否有开发测试脚步的必要
④项目测试过程中,回归轮次多,功能点多,回归测时间比较短的项目,自动化测
试 能节省大量时间,提高测试效率和质量
⑤其他情况:手工测试无法完成(如性能测试、配置测试、大数据量测试)
2、自动化测试流程:
①需求分析
②自动化测试策划
③自动化测试脚本执行
④测试执行
⑤测试总结
三、Selenium 简介&原理 :
1、开源、免费
2、Web 应用自动化测试工具集
3、Selenium 1.0 版本 3 种类型:
①Selenium IDE:是 Firefox 浏览器的一个插件,包含了 Selenium Core,有录制、编辑、回
放脚本的功能,录制非常简单,很多录制后不需要修改,即可回放,编辑也非常简单,一行
就是一个完整的命令,十分适合编程基础薄弱的人使用,但是由于录制脚本使用的语言是
selense 语言,类 html 的脚步语言,与组织脚本不够灵活,所形成的功能不如 Selenium RC
强大,且只支持 Firefox 浏览器,所以一般情况下是以 Selenium IDE 来熟悉 Selenium 工具,
然后利用 IDE 来录制脚本,并保存为程式语言脚本,如 java 脚本
②Selenium RC:Selenium Remote Control,selenium 的核心部分,可以实现利用 selenium
的代理服务器来实现访问浏览器实现自动化测试。其中:selenium RC 分为:Client 和 Selenium
Server。client 实现自动化脚本,Selenium Server 负责控制浏览器行为。
Selenium Server 分为以下 3 个部分:
Launcher:启动浏览器
Http Proxy:selenium Server 的 Http 代理
Core:嵌入到浏览器的 js 代码。
实现原理:由 Launcher 启动浏览器,将 core 嵌入到浏览器,并把浏览器代理设置为
selenium Server 的 Http Proxy。使用的是 JavaScript 注入技术与浏览器打交道,需要 Selenium
RC 启动一个 Server,将操作 Web 元素的 API 调用转化为一段段 Javascript,在 Selenium 内核
启动浏览器之后注入这段 Javascript。Javascript 可以获取并调用页面的任何元素,自如的进
行操作。由此才实现了 Selenium 的目的:自动化 Web 操作。这种 Javascript 注入技术的缺
点是速度不理想,而且稳定性大大依赖于 Selenium 内核对 API 翻译成的 Javascript 质量高低
③Selenium Grid:用于实现分布式测试,利用 Grid,可以很方便地同时在多台机器上和异
构环境中并行运行多个测试事例
4、Selenium2.X 版本:Selenium 2,又名 WebDriver,它的主要新功能是集成了 Selenium1.0 以
及 WebDriver(WebDriver 曾经是 Selenium 的竞争对手)。也就是说 Selenium2 是 Selenium
和 WebDriver 两个项目的合并,即 Selenium2 兼容 Selenium,它既支持 Selenium API 也支持
WebDriver API。
实现原理:在我们 new 一个 WebDriver 的过程中,Selenium 首先会确认浏览器的 native
component 是否存在可用而且版本匹配。接着就在目标浏览器里启动一整套 Web Service,
这套 Web Service 使用了 Selenium 自己设计定义的协议,名字叫做 The WebDriver Wire
Protocol。这套协议非常之强大,几乎可以操作浏览器做任何事情,包括打开、关闭、最大
化、最小化、元素定位、元素点击、上传文件等等等等。通过这套协议我们写的程序就能和
浏 览 器 通 讯 , 然 后 调 用 浏 览 器 自 身 的 API 接 口 , 这 样 就 可 以 直 接 控 制 浏 览 器 ,
从上图中我们可以看出,不同浏览器的 WebDriver 子类,都需要依赖特定的浏览器原生
组件,例如 Firefox 就需要一个 add-on 名字叫 webdriver.xpi。而 IE 的话就需要用到一个 dll
文件来转化 Web Service 的命令为浏览器 native 的调用。另外,图中还标明了 WebDriver Wire
协议是一套基于 RESTful 的 web service。
关于 WebDriver Wire 协议的细节,比如希望了解这套 Web Service 能够做哪些事情,可
以 阅 读 Selenium 官 方 的 协 议 文 档 , 在 Selenium 的 源 码 中 , 我 们 可 以 找 到 一 个
HttpCommandExecutor 这个类,里面维护了一个 Map<String, CommandInfo>,它负责将一个
个代表命令的简单字符串 key,转化为相应的 URL,因为 REST 的理念是将所有的操作视作一
个个状态,每一个状态对应一个 URI。所以当我们以特定的 URL 发送 HTTP request 给这个
RESTful web service 之后,它就能解析出需要执行的操作。
可以看到实际发送的 URL 都是相对路径,后缀多以/session/:sessionId 开头,这也意味
着 WebDriver 每次启动浏览器都会分配一个独立的 sessionId,多线程并行的时候彼此之间不
会有冲突和干扰。例如我们最常用的一个 WebDriver 的 API,getWebElement 在这里就会转
化为/session/:sessionId/element 这个 URL,然后在发出的 HTTP request body 内再附上具体的
参数比如 by ID 还是 CSS 还是 Xpath,各自的值又是什么。收到并执行了这个操作之后,也
会回复一个 HTTP response。内容也是 JSON,会返回找到的 WebElement 的各种细节,比如
text、CSS selector、tag name、class name 等等。
四、Selenium IDE 安装和使用 :
1、安装 Selenium IDE
①下载 Firefox 浏览器
②浏览器插件中搜索 Selenium IDE,然后安装 Selenium IDE 插件
③安装完后重启浏览器,然后按 Ctrl+Shift+S,就会显示 Selenium IDE
---------------------------------------------第二天分割线------------------------------------------------
注意:今天发现我的老版本的 firefox 居然自动更新了,于是出现最新版本的 firefox
不兼容老版的 Selenium IDE 的情况,于是上网上搜帖子,出现这种情况时,解决办法是
下载老版本的 firefox,然后再安装 Selenium IDE 插件
剩余12页未读,继续阅读
qq_39474124
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功