毕业论文
计算机论文
经济论文
生物论文
数学论文
物理论文
机械论文
新闻传播论文
音乐舞蹈论文
法学论文
文学论文
材料科学
英语论文
日语论文
化学论文
自动化
管理论文
艺术论文
会计论文
土木工程
电子通信
食品科学
教学论文
医学论文
体育论文
论文下载
研究现状
任务书
开题报告
外文文献翻译
文献综述
范文
基于FitNium的Web关键字驱动的测试(4)
图2.4 Selenium IDE回放
最后脚本调试完毕之后,将脚本保存成自己需要的代码即可,本文存成java代码脚本。 如图2.5:
图2.5脚本代码转换
保存后的脚本java代码为:
package com.example.tests;
import com.thoughtworks.selenium.*;
import org.testng.annotations.*;
import static org.testng.Assert.*;
import java.util.regex.Pattern;
public class java1 extends SeleneseTestNgHelper {
@Test public void testJava1() throws Exception {
selenium.open("/");
selenium.type("id=kw", "中国");
selenium.click("id=su");
}
}
2.1.2 Selenium RC
全称为Selenium Remote Control。Selenium RC包含Selenium Core,能针对任何支持JavaScript的浏览器进行页面自动化测试。Selenium Core是Selenium技术中的核心驱动模块,是一个由JavaScript脚本语言编写的驱动工具,可以操作Web页面中HTML标签元素,是Selenium IDE和Selenium RC工作的驱动引擎。
它在Web浏览器与被测Web应用之间架设一个代理服务器(Selenium Server),采用Java语言实现,使得JavaScript引擎与被测Web应用同源,绕开同源策略(见2.1.3介绍)的限制(Same Origin Policy),进而取得对Web页面进行各种操作的权限。提供多种编程语言支持,具有多种浏览器支持,使用灵活,易于扩展,便于文护的特点。
Selenium RC作为Selenium框架中的主要工具,支持使用高级编程语言如Java、PHP、Ruby、C#等编写Web页面测试脚本,同时几乎支持目前所有主流浏览器。其编写的测试脚本能够跨平台运行。运用Selenese编写的脚本命令能够通过Selenium RC转换成相应的高级语言脚本,实现各种复杂的逻辑测试。
1、RC组件
Selenium RC工具中,主要由两个组件协同工作来实现RC的功能。分别是Selenium Server(以下称SServer)和Client libraries。在实际过程中,RC组件的功能如表2.1所示:
表2.1 Selenium RC组件功能
组件名称 功能描述
Selenium Server 1、 为测试过程启动和关闭浏览器
2、 解释和运行与测试用例脚本对应的Selenium命令
3、 扮演HTTP代理服务器角色,拦截和验证HTTP协议信息以绕过同源策略实现浏览器与AUT之间
通信
。
Client libraries 1、 提供客户端驱动功能
2、 为所支持的编程语言提供与Selenium Server之间的通信接口,实现RC客户端与服务器之间信息交互。
Selenium服务器负责传递JavaScript脚本形式的Selenese测试命令到浏览器端执行,在浏览器端,通过调用JavaScript解释器来执行Selenese命令,这个过程会执行命令中指定的Actions并验证每一个操作过程的结果。图2.6显示了Selenium Server、Client libraries 与客户端之间的关系:
图2.6 Selenium RC架构图[40]
图2.6清晰描述了Selenium RC各组件与浏览器、用户测试用例之间的关系。测试人员使用Java、PHP等高级语言编写测试驱动代码时,通过调用Client libraries所提供的客户端驱动类,实现测试用例驱动程序与相应的Selenese命令之间的映射,从而实现与SServer之间的通信,SServer中的Selenium Core通过调用浏览器的JS解释器来解释并执行Selenese测试命令,从而实现测试脚本在浏览器端对AUT的测试。Selenium RC能够轻松完成包括复杂条件逻辑控制、循环迭代和数据库集成等复杂的测试任务。
共11页:
上一页
1
2
3
4
5
6
7
8
9
10
11
下一页
上一篇:
VC++有向无环图所有拓扑序列的生成
下一篇:
移动通信网络位置跟踪技术的模拟
基于Apriori算法的电影推荐
PHP+IOS的会议管理系统的设计+ER图
数据挖掘在电子商务中的应用
数据挖掘的主题标绘数据获取技术与实现
基于PageRank算法的网络数据分析
基于神经网络的验证码识别算法
基于网络的通用试题库系...
AT89C52单片机的超声波测距...
志愿者活动的调查问卷表
神经外科重症监护病房患...
医院财务风险因素分析及管理措施【2367字】
公寓空调设计任务书
10万元能开儿童乐园吗,我...
承德市事业单位档案管理...
国内外图像分割技术研究现状
C#学校科研管理系统的设计
中国学术生态细节考察《...