- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于关键字驱动Web自动化测试研究
基于关键字驱动Web自动化测试研究
[摘要]研究与设计以Selenium测试工具为基础,运用关键字驱动技术,web应用的自动化测试框架。
[关键词]关键字驱动WebSelenium
中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)1220051-01
一、自动化测试技术概述
(一)Web测试概述。随着互联网和Web技术的进步,Web应用频繁出现在人们工作生活中。作为用户,优秀的Web应用为工作与生活带来了很多便利与快乐。作为软件开发测试人员,Web应用系统的测试、确认和验收是一项重要而富有挑战性的工作。Web的系统测试与传统的软件测试不同,它不但需要检查和验证是否按照设计的要求运行,而且还要测试系统在不同用户的浏览器端的显示是否合适。重要的是,还要从最终用户的角度进行安全性和可用性测试。
(二)自动化测试技术的发展。软件自动化测试技术的发展一般分为3代:
第一代:录制和回放。由测试工具记录你所做的每一步操作,加以录制并回放出来。测试工具起到了一个录像机的作用,虽然操作异常简单,并且可以达到自动化测试的基本要求,但是缺少灵活性,自身没有判断能力,容易记录一些无用操作,并且维护费用比较高,一旦界面改变,脚本就将重新制作。
第二代:数据驱动。从专有的数据文件中读取数据,并将这些测试数据放入测试脚本中,不同的数据文件对应不同的测试用例。和第一代相比,提高了脚本的利用率,但是同样受到被测软件界面变化的影响。
第三代:关键字驱动。关键字驱动测试是数据驱动测试的一种改进类型,它将测试逻辑按照关键字进行分解,形成数据文件,关键字对应封装的业务逻辑。主要关键字包括三类:被操作对象(Item)、操作(OperatiOn)
和值(value),用面向对象形式可将其表现为Item.operation(value)。
关键字驱动的主要思想是:脚本与数据分离、界面元素名与测试内部对象名分离、测试描述与具体实现细节分离。
(三)Selenium介绍。Selenium是ThoughtWorks公司开发的一套基于Web应用的测试工具,直接运行在浏览器中,模拟客户操作,所见即所得,就像真实用户所做的一样。Selenium的核心,是用Javascript编写的。这使得测试脚本可以在所有支持Javascript的浏览器中运行。支持多操作系统(如Windows,Mac OS,Linux等)和各种浏览器(如Internet Explorer,Firefox等),更容易发现浏览器的兼容性问题。
二、自动化测试框架概述
为了实现基于关键字驱动的web自动化测试框架,主要实现有4个基本功能模块,分别为脚本生成模块,Selenium模块,执行模块以及结果分析模块。框架基本运行流程如下图。
测试用例,通过测试脚本模块的分析,生成可测试的脚本,由执行模块控制Selenium,运行脚本,并将结果返回给结果分析模块分析,最后生成测试结果,完成整个测试。
三、功能模块设计与实现
本文以通过搜索引擎查找并返回结果页面为用例,说明相关模块的具体功能。
(一)测试用例的编写方式。根据关键字驱动的原则,测试用例编写应注意将测试步骤按被操作对象(Item)、操作(Operation)和值(value)进行划分。如:
该测试用例清楚的表达了每个测试步骤的对象和行为,实现对象,行为和数据的分离。测试用例可根据实际情况,选择不同的方式来存储。简单的文本文件、表格式的Excel文件、便于管理的数据库,等等。其中,对于大量测试用例,数据库存储将、有着易于管理,易于存档等诸多优势。
(二)Selenium模块。本文主要使用Selenium RC模块。Selenium RC使用起来非常简单,仅仅运行一个可执行的jar文件,便可通过默认端口连接Selenium Server。当然,也可以设定参数来运行,包括更改默认端口,具体的可以参考Selenium参考文档。Selenium RC支持多种语言,如Java,C#,Perl,Python,Ruby,Html等,可以根据不同的环境和需要进行选择。
(三)脚本生成模块。脚本生成模块的主要作用是对关键字数据文件进行分析,生成组织Selenium可执行的脚本的文件,提供给执行模块运行。脚本文件的生成,主要使用模块化的处理方式。根据关键字驱动的原则,模块以测试步骤为单位,可以根据具体情况来进行改动,对于相对固定,使用频率高的测试用例也可将其模块化。如本文用例,搜索引擎的界面已经相对稳定,且该测试用例使用频繁,则可以将整个用例作为一个测试模块,不仅降低了测试成本,同时提高的测试效率
您可能关注的文档
最近下载
- 浅谈略读课文教学--专题讲座.docx VIP
- 绿色金融复习测试卷.doc
- 2025届高考语文复习:议论文主体段落“五层结构法”写作指导 课件(共47张PPT)(含音频+视频).pptx VIP
- 电子版个人简历模板个人简历模板空白表格.docx VIP
- 摩登家庭台词剧本第一季第一集中英双语左右对照.pdf VIP
- 1:50万新 疆地质图[46幅图].pdf VIP
- SL101-2014 水工钢闸门和启闭机安全检测技术规程.docx VIP
- HK-328W型pH分析仪说明书V3.0.pdf VIP
- 001 三氯甲烷化学品安全技术说明书.doc VIP
- 高考英语语法词汇专项突破:09状语从句专项巩固训练+答案+解析[001].docx VIP
原创力文档


文档评论(0)