商业web自动化测试 开源和开源web自动化测试 开源的区别

基于Web的自动化测试框架研究小学论文:&&&&&&&&&(教学反思&&&)初中论文:&&&&&&&&&&&&高中论文:&&&&&&&&&&&&其它:&&&&&&&&&&&&&&&论文主题:&&&&&&&&&&
快速导航: > 文秘文档 > 基于Web的自动化测试框架研究相关推荐:1.2.3.4.5.6.7.8.9.10.
  随着社会的发展和行业的类型和业务的日趋增多,人们对于信息的要求也越来越高。同时,随着互联网和web的不断发展,依托互联网和web技术的公司的数量也随之进一步增加。为了大幅度提高web的技术水平,以此更好的实现全球范围的信息共享,web研发人员就需要不断探索。本文介绍了基于web的自动化测试框架的优点、局限性以及较为常用的5种web自动化测试框架。
  【关键词】web 自动化测试框架 局限性   随着web应用范围的不断扩大,应用环境也日趋复杂,因而为了保证web能够更好的为企业服务,web测试人员就应当不断研发出先进的自动化测试的方法和思想。经过实践证明,软件自动化测试技术的不断完善可以促进软件测试效率的提高,所以,研究web的自动化框架就变得尤为重要,并且具有不容忽视的现实意义。   1 基于web的自动化测试框架的简介   基于web的自动化框架,即通过将先进的web技术和自动化研究结合起来,以对象库为依托通过抽象元素的通用操作方法,改善传统的脚本的编写模式,为用户提供更为方便、更为畅通的自动化测试模式。此类基于web的自动化测试框架经过实践的检验,具有良好的可操作性及独立性。随着web的不断发展,为自动化测试框架的完善和效率的提高带来机遇的同时也带来了挑战。自动化测试技术的完善可以明显缩短新软件的发布周期,但是如果没有良好的设计,自动化测试技术不但耗资巨大,后期需要大量的维护工作。所以,只有选择合适的自动化框架模式,深刻了解自动化测试的优点和局限性,才可以熟练应用这门技术,并且促进我国相关产业的发展。   2 自动化测试的优点和局限性   现如今,自动化测试的研究具有一定优点的同时,也具有较强的局限性,下述对自动化测试的优点及其局限性进行了阐述。   2.1 自动化测试的优点   基于web的自动化测试技术融合了web技术和自动化技术的优点,简单来讲,基于web的自动化测试技术的优点主要有以下几方面:   使软件的新版本回归测试的成本最低。为了保证软件的正常使用和不断更新换代,软件在升级之前都要做回归测试,进而保证软件可以正常使用。采用这种自动化测试技术之后,软件的测试工作更多的是依托先进的网络技术和程序,大大减少了传统人工检测的成本。   可以在较短的时间内完成多项测试工作。软件测试的过程中需要测试的内容是多种多样的,通过自动化测试的方法可以实现多项测试同时进行,进而,缩短软件的测试时间,使软件尽快的投入市场,丰富人们的生活、工作。   自动化测试技术融入了web的智能性,因而,很多单靠人力不能完成的测试内容都可以依靠自动化测试来实现。与此同时,自动化测试具有较强的一致性和可重复性。通过网络的信息传递作用,很多测试数据都可以实现共享和实时传递,并且可以实现对于同一内容的重复测试,由此保证测试结果的一致性和准确性。   可以实现对于资源的充分利用。基于web的自动化测试技术充分发挥了网络技术的作用,可以对于资源进行统计和分类,进而保证资源可以得到充分的利用;第六方面,可以更好、更快的将软件推向市场。自动化技术的不断发展和完善,加之互联网技术的不断应用,可以使软件测试的时间、成本和效率都得到提升,以便于使软件可以尽快的推向市场。   2.2 自动化测试的局限性   虽然自动化测试具有很多的优点,但是自动化测试并不是万能的,不能完全取代传统的手工测试,因而认识到自动化测试的局限性对于促进自动化测试技术的完善和发展有着重要的作用。自动化测试的局限性主要表现为:首先,并非任何软件都可以用自动化测试技术进行测试的;其次,自动化测试对于测试质量的依赖较大。如果仅仅依靠自动化测试框架对于软件进行测试,那么自动化测试框架的可靠性要直接影响到软件测试的质量;再次,自动化测试在一定程度上制约了软件的开发。自动化测试虽然有很多的优点,但是过度的依赖自动化测试,在软件来发前期测试结果的不可靠将直接打击到研发人员的自信心,进而阻碍软件的开发。   3 常用的自动化测试框架   常用的自动化测试框架有五种:其一,测试脚本模块化框架。测试脚本模块化框架的应用原则是抽象和封装通过一个小的独立的脚本来表示被测试程序的模块,之后通过分层的方法,将这些小的脚本组合在一起形成一个大的、特定的测试用例。这种测试框架是五种框架中最简单也是最容易掌握的;其二,测试库构架框架。和测试脚本模块化框架类似,测试库构架框架也可以将被测试的程序分割成不同的过程和函数,这种测试框架需要提前在数据库中创建程序模块以及函数,进而在测试时就可以直接调用;其三,数据驱动测试框架。数据驱动测试框架就是在自动化测试框架'……剩余内容,请点击下方按钮显示。前一篇:后一篇:selenium(2)
 ● 面临的挑战
  从到Facebook,从Twitter到新浪微博,新一轮的热潮正在全世界蔓延。随着云概念的日益清晰,越来越多的企业也已经摆脱了传统的C/S架构的应用框架而转投的怀抱,Web已经成为我们和的重心。
  有别于传统的桌面应用开发,Web应用因为其迭代周期短,需求变化快特殊性质,越来越多的Web开发团队在拥抱。同时随着前端技术Javacript,Html5,等不断被推出和完善,Web应用也变得越来越复杂很绚丽。这都给我们的带来了挑战。
  √ 持续变化的需求
  √ 复杂的UI(各种Javascript的插件,Ajax等)
  √ 往往一个测试团队需要应付多个项目的测试工作
  √ 非常有限的资源(人力,成本,等等…)
  √ 跨平台(,Mac,windows),跨浏览器(Firefox,Chrome,IE)
  ● 如何解决
  如何在有限的资源下,又可以解决目前我们广大测试团队所面临的挑战呢?ThoughtWorks公司推出的开源Web自动化测试工具给我们带来了解决之道。Selenium基于Javascript并结合其WebDriver来模拟用户的真实操作,它有很好的处理Ajax的能力,并且支持多种浏览器(Safari,IE,Firefox,Chrome),可以运行在多种上面。
  但是Selenium只是帮我们解决了执行层面的问题,在大规模的项目中,我们还需要一个基于Selenium平台的,这个框架需要有以下的特性。
  √ 支持数据驱动(DDT)
  √ 对象库的分离和管理
  √ 自动化测试脚本的组织和管理
  √ 脚本的可重用(团队)和可配置
  结合上面的需求,在这里介绍两个基于Selenium的Web自动化测试框架,它们都采用了数据驱动的设计方式,可以对于测试脚本的组织和执行进行灵活的管理和配置。
  ● Watip
  Web Application&&In&&(/p/watip),这个是我用Python写的一个简单的基于Selenium的数据驱动的测试框架。设计借鉴了之前一个朋友的测试框架的设计模式。采用XML形式来实现数据驱动和测试脚本的管理。
  ……………………
  查看全文请点击下载:
  ● Ringo
  Ringo是Google内部使用的一个基于Selenium的Web自动化测试框架,它在GTAC2010的大会上做了介绍。Ringo是用Java开发,结合了TestNG实现了数据驱动和高度可配置化,并且具有很好的对象库的管理的功能,是一个比较成熟的测试框架。
  从Ringo的架构中可以看出,Ringo实现了数据,对象,操作的3者完全分离。并且对于一些公共的脚本进行了抽取和重构(SeleniumHelper),代码的复用率非常高。所有的都是可配置话。
  查看全文请点击下载:
  本文收录于《51测试天地》电子杂志第二十一期。
  版权声明:本文出自51Testing软件测试网电子杂志——《51测试天地》第二十一期。51Testing软件测试网及相关内容提供者拥有内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像,否则将追究法律责任。
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:51451次
排名:千里之外
原创:15篇
转载:169篇
(1)(1)(1)(1)(4)(5)(1)(1)(4)(7)(5)(15)(14)(10)(3)(9)(13)(11)(4)(13)(10)(3)(4)(3)(8)(3)(6)(1)(4)(1)(17)(1)(5)君,已阅读到文档的结尾了呢~~
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
基于Selenium的Web自动化测试研究
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口自动化测试框架比较 - 舒润 - 博客园
3、Ant+Selenium+Testng+Jenkins
  这是我现在正在研究并使用的框架。(ps:jenkins这...还没用到。原来听说了hudson的强大,这个升级版估计会更有使用价值,未来研究)我这里说的没有区分RC还是webdriver,两者各有千秋又互相补充,兼而用之即可。还是先说优点:第一:它开源不要钱!很多时候这是最关键的一点..当你在研究或推行一套框架的时候,价格是不得不考虑的因素。第二:灵活性,比RFT更加灵活,因为更加入了xpath(当然大型项目的脚本里xpath..慎用,尽量取id或稳定的属性)。加上配合IDE进行定位等,效果比较好。第三:相比rft,资料更全面,用该框架的也越来越多。据我了解,北京一些中型公司也在应用类似以selenium为核心的自动化测试框架。第四:就是开源性可以方便我们进行二次开发,例如提取对json和xml的处理来实现的数据驱动等。
  缺点:第一:无论是RC还是Webdriver,对测试人员的编码水平有一定要求。同时ant,testng,hudson使用也都是小众,大多数人执行这个框架前需要有较长时间适应。第二:毕竟时间较短,不如QTP如此完善,但是我们可以期待其未来发展。也许3.0会带来一个巨大的变化。
1、以为核心的框架
  QTP是大家最常用的测试工具。而现在很多公司用的自动化测试框架都是以此为核心的。我在触自动化测试之初最先上手的也是QTP。
  以QTP为核心的自动化测试框架优点在于:适用性好,很多人都已经会用或者至少说可以简单应用,脚本也简单易懂,大多数无任何代码基础的测试人员都可以加入脚本录制和调试。
  我本人一直对QTP不太感冒的原因也就是它的缺点:对象库。这个词对自动化测试的tester们实在是个巨大的打击。我不去一一细数其罪行,但是,关键字的框架,灵活度实在不敢恭维。再加上QTP在对flex等的支持上实在是也让人欲哭无泪。如果说还有其他的,就是一旦应用于企业自动化测试框架,必然需要购买正版,价格的问题。。。
  2、RFT
  &Functional Tester,的产品。我一直对ibm产品颇具好感,不知道是不是由于第一台笔记本就买了IBM的缘故。跑题了,回来说这个框架。
  优点:其一是相比起QTP框架,灵活度要高。因为它最核心的find()。每个脚本里都会大量出现类似&new uiTestObject(find(atDescendant(".xxxx","xxxx",".xxxx","xxxx")))...&的语句,用来动态查找对象以解决对象识别问题。其二是对的无缝连接,让很多人能更好更快的上手。
  缺点:首先还是俗一点,说这个价格。高于QTP的价格让很多公司难以接受。第二,尽管ibm的团队非常强大,但是我们可以看到,由于种种原因,RFT的使用率比较低,这就导致网上关于该框架的疑难问题解决方案较少。第三,根据亲身经历,RFT的国内技术支持太弱,有问题很难请到,并且其技术支持人员测试技术能力都较差。
  我也不知道是不是这样拼这个框架,这是内部使用的一套自动化测试框架,或者叫平台。外面当然也买不到,我有幸见识了一次,包含了虚拟机的集成分配直至自动化测试执行,非常之惊艳。优点一大把缺点就是买都买不到。。。也给了我们一个方向,自主开发的自动化测试框架也许才是最适合你的。
原文地址:
随笔 - 269

我要回帖

更多关于 开源自动化测试框架 的文章

 

随机推荐