开源Web自动化测试指南计算机软件与应用IT计算机专业资料.docx
《开源Web自动化测试指南计算机软件与应用IT计算机专业资料.docx》由会员分享,可在线阅读,更多相关《开源Web自动化测试指南计算机软件与应用IT计算机专业资料.docx(37页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、开源Web自动化测试指南计算机软件与应用IT计算机专业资料开源自动化测试实施指南说明: 1. 本文件中“”中内容为举例和说明文字,请在文件拟制时替换或删除;2. 若文中某章节内容可省略、不需要或适用,请保留该标题,并根据实际在内容部分写明“略”、“勿需”或“不适用”等,同时适当说明原因;3. 请作者注意在文档右上角修改该文档的密级。文件修订历史修订时间修订说明作者审核2011-8-5创建目录岑海菊温素剑2011-8-17章节1、2、4、岑海菊温素剑章节3李颖、陈建红、岑海菊温素剑章节5李颖温素剑模板修订历史版本生效时间变更概要作者审核批准1.0.02011-8-5创建自动化测试方法文档岑海菊3
2、7 / 37目录1引言及概述41.1背景41.2开源自动化测试的优势41.2.1简介41.2.2的优势42开源自动化测试架构62.1基于 2.0的自动化测试框架62.2新自动化测试代码架构73自动化测试编写83.1集成开发环境搭建83.1.1选择底层实现方法83.1.2配置93.1.3项目环境配置103.2测试案例编写133.2.1语法143.2.2介绍143.2.3测试案例框架164管理测试案例194.1测试工程目录结构194.2使用运行测试案例204.2.1介绍204.2.2基本语法204.2.3输出测试报告样式214.2.4 214.3使用管理自动化测试任务224.3.1介绍224.3.
3、2任务创建224.3.3任务执行244.3.4执行结果查看245数据管理255.1.1自动化测试流程图255.1.2连接数据库代码范例265.1.3数据回滚脚本285.1.4数据初始化脚本285.1.5配置文件管理296疑难手册31附录A 2.0常用命令32附录B案例文件、配置文件32附录C使用及培训资料321 引言及概述1.1 背景目前是我司使用最广泛的自动化测试工具,在实际使用中发现,存在以下不足之处:1) 基于测试对象库来识别测试对象,其内部机制是不透明的,在实际工作中,对测试对象库的维护工作量很大,耗费了测试人员大量的精力,效果却并不好;2) 的设计架构决定了当前测试脚本可复用性差,很
4、难积累可重复使用的函数、组件、包等测试资产;3) 使用的描述性编程来创建测试脚本,严重依赖于测试人员的个人经验和技巧,难以大规模推广;4) 自动化测试数据经常失效,原因在于没有统一的数据回滚措施。 基于商业自动化测试工具的录制/回放模式,无法构建健壮的自动化测试脚本,所以我们迫切地需要新的工具来替换。当前有多种开源自动化测试工具可供选择, 2.0 便是目前使用最广泛的开源测试工具之一。1.2 开源自动化测试的优势1.2.1 简介是一系列基于的自动化测试工具。提供了一系列测试函数用于支持自动化测试,这些函数非常灵活,他们能够通过多种方式定位元素,并将预期结果及系统实际表现相比较,测试人员通过这些
5、测试函数来模拟用户操作,从而实现自动化测试。 2.0集成了 ,解决了 1.0的局限,二者相互弥补,提供了更多可选的编程接口。1.2.2 的优势的测试对象库,对及测试人员来说是不透明的。图1-1为构建自动化测试脚本的流程,在使用录制测试脚本的时候,测试人员根本不清楚测试对象库中的测试对象是否有效,能否满足需求,这给使用者带来很大的困扰。图 11构建自动化测试脚本的流程 2.0具有很强的灵活性和很好的扩展性,测试人员从页面数据中提取对象,引入测试逻辑构建测试脚本。通过这样的方式,测试人员能够确保测试对象的有效性,对测试对象的维护也更容易。图 12构建 2.0自动化测试脚本的流程对比和2.0构建自动
6、化测试脚本的流程图,我们可以发现,不再基于录制/回放模式来创建自动化测试脚本,弥补了的不足:1) 开源测试工具识别测试对象的机制是透明的,可以减少测试人员的维护工作量;2) 采用开源测试工具,可以将需要重用的测试代码打包到中。后续计划引入配置管理,保证可重用包的质量;3) 采用语言来编写测试脚本,在测试对象识别得到保证的前提下,这并不是一件充满技巧性的工作; 4) 针对自动化测试数据经常失效的问题,新渠道目前的做法是将恢复测试数据的放在定时中,在自动化测试运行前恢复相关测试数据。除此之外, 2.0在很多方面都优于,如表1-1所示。表 11 及 2.0的对比对比项(商业) 2.0(开源)购置成本
7、昂贵免费免费测试对象识别机制不透明透明透明编码语言等多种语言代码可重用性低高高脚本维护工作量高低低是否支持录制/回放模式是是(功能较弱)否执行效率低一般高测试脚本是否支持配置管理不支持支持支持是否支持订制否是是2 开源自动化测试架构2.1 基于 2.0的自动化测试框架图2-1是基于 2.0的自动化测试的整体框架(虚线代表尚未实现的功能):步骤1:在开发人员提交代码后,持续集成引擎()会对最新的代码进行编译和部署;步骤2:从配置管理工具()获取测试脚本;步骤3:调用编译测试脚本;步骤4:调用去运行测试案例;步骤5:通过 2.0操作浏览器;步骤6:输出测试报告,并以邮件的形式向测试人员发送自动化测
8、试结果。图 21新自动化测试整体框架2.2 新自动化测试代码架构基于 2.0的自动化测试,每个测试案例就是一个 。测试案例,由测试数据和测试逻辑两部分组成。测试逻辑最底层的实现是2.0库,通过抽象和扩展出类。测试人员通过调用类的方法,来构建测试逻辑。关于测试数据,请参考第5章数据管理。图 22 新自动化测试代码框架3 自动化测试编写3.1 集成开发环境搭建3.1.1 选择底层实现方法前面提到, 2.0集成了的,因此我们首先需要选择底层的实现方法是还是。二者对比如表3-1所示,提供了丰富的方法,支持多种浏览器,可以满足各种各样的测试逻辑需求,所以,一般情况下优先选择。但有些系统比较特殊,某些功能
9、无法支持,此时可考虑使用。提供的方法虽不及多(如截屏等功能),但是也基本能满足系统的要求,最主要的是它的执行速度非常的快,这点是所望尘莫及的。总而言之,还是要根据系统的实际情况,选择合适的实现方法。表 31 及的对比对比项编码语言等多种语言是否支持录制/回放模式是否执行效率一般高支持的浏览器、提供的测试方法多基本3.1.2 配置新标装的电脑,配置已经完成,请按照下述步骤检查配置是否正确:步骤1:设置电脑环境变量:我的电脑(右键) 属性 高级 环境变量 (系统变量)新建 ,进行如下编辑:变量名:变量值(安装的目录):C: 1.6.0_20 步骤2:设置电脑环境变量:我的电脑(右键) 属性 高级
10、环境变量 (系统变量)新建,进行如下编辑:变量名:变量值(安装的目录):;步骤3:在中配置点击菜单中 ,配置如图3-1。图 31 中配置图3.1.3 项目环境配置1) 新建项目(参见图3-2) (参见图3-3) (项目名,参见图3-4)(参见图3-5)图 32图 33输入创建的工程名字图 34图 352) 导入自动化测试的包和相应的库 (参见图3-6) 加入(参见图3-7)图 36图 37从官网上下载的,包含了2.0b3、2.0b3和,其中2.0b3是源文件的包,不需要导入工程,其他包都要导入。所有需导入工程的包已整理在0 2.0中,详细说明如下:a) (参见3.1.1章节,根据选择的实现方法
11、加入对应的包);b) 加入2.0b3;c) 加入2.0b3文件夹下里面的所有;3) 新建包在包文件夹下面建立一个属于自己系统的自动化测试的包。包()的命名规范:全部小写,测试代码为.。例如:。选中资源包右键单击(参见图3-8)()(参见图3-9)图 38图 393.2 测试案例编写3.2.1 语法提供了一套丰富的命令来测试你的应用,这套命令通常叫。 它可以用于测试基于标签的页面元素,例如:链接,输入框,下拉框,提交表单,表格数据等。(具体常用命令可以参见附录A)命令调用格式主要包括三部分:(命令)、(目标)、(值),下面通过个简单的例子说明:();此命令的目的是输入登陆用户名,具体解析如图 3
12、10所示:(命令) (目标) (值) 例1 图 310 命令调用格式图命令可以转变为编程代码,他可以同时支持包括、在内的多种语言,这里我以语言为例举一个简单的例子。这是一个系统登陆的案例,实现的功能包括:打开登陆界面-输入登陆用户名、密码-点击登陆。通过这个案例我们可以很容易的理解如何运行命令,同时细心的人应该注意到了,在命令中(目标)或者(值)有时是可以省略的(例如:、. )。 () = 115;登陆用户名 = 88888;登陆密码();打开登陆界面(30000); 等待页面加载();输入登陆用户名();输入登陆密码();点击登陆按钮(60000); 等待加载界面(); 关闭3.2.2 介绍
13、 是一门在 文档中查找信息的语言。 用于在 文档中通过元素和属性进行导航。它包含一个标准函数库,使用路径表达式来选取,这些路径表达式和我们在常规的电脑文件系统中看到的表达式非常相似。用技术来记录网页元素的位置和属性。下面通过个简单的例子说明:在这个案例中我们要做的操作是选择查询结果中的第一条数据,系统界面图和代码解析图见图3-11和图3-12。路径为11。图 311 系统界面图图 312 代码解析图解析如下:1) 路径以双斜线 开头, 则表示选择文档中所有满足双斜线之后规则的元素(无论层级关系),即寻找下面所有满足此路径条件的数据。2) 前缀 用于指定属性,则表示在下面查询到满足的数据,如图3
14、-13 。图 313 代码解析图3) 以斜线 / 开始, 那么该路径就表示到一个元素的绝对路径,在此案例中11则表示选择在下面第一行第一列的数据,如图3-14。图 314 代码解析图3.2.3 测试案例框架的开发提供的是3风格的,所以我们的自动化测试案例要符合3的框架。3的测试案例,包括三个部分:测试方法*()、初始化函数()和结束初始化函数()。这三者的执行顺序是:()*()()。此外,3在命名规范和继承层次上有严格的要求:1) 测试类测试类必须继承。是的子类,所以在新建的测试类直接继承即可。2) 测试方法测试方法必须是,且以开头。为了使命名更为规范,测试方法名应及测试案例的功能模块相关,如
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 开源 Web 自动化 测试 指南 计算机软件 应用 IT 计算机专业 资料
限制150内