web自动化测试分析和总结.docx

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

web自动化测试

序:此只是简单的一个打酱油似的B/S架构的自动化测试调研,希望能对大家一点点启发,最好集大家之所成能给我一些建议和启发,万分感谢

一、目的

为了能够提高B/S架构的应用程序测试的测试效率。二、应用范围

B/S架构的应用程序的应用功能测试与验证测试。三、工具选型与比较

主要应用工具介绍

主要应用的测试工具包括以下几种

QTP,QuickTestProfessional.采用了关键词驱动(Keyword-Driven)测试的理念,关键字驱动或者称为关键词驱动(Keyword-Driven),是为了解决通过录制的方法来产生脚本的问题。就是先把所有需要的Web对象都添加到对象库中,然后在关键字视图中手动添加测试步骤.

RFT,RationalFunctionalTester,是一个面向对象的、自动测试工具,它能够测试各种应用程序。可以应用其进行WEB对象的抓取。

Selenium,ThoughtWorks专门为Web应用而开发的自动化测试工具,适合进行功能测试、验收测试。

Watir(WebApplicationTestinginRuby)是一个优秀的开源工具,用于开发基于Web应用的自动化测试程序。它使用Ruby脚本语言,提供了轻量级的自动化测试程序框架和丰富的开发库,有效地加速了自动化测试程序开发。

、工具应用比较

1)、QTP采用关键词驱动和描述性编程的方法,其成熟度广,应用普及率较广,框架搭建较简单,但其价格昂贵,采用的是activex驱动模式,灵活性低,不易与自身平台进行结合。2)、RFT可以支持WEB自动化测试,但仅仅是对其对象的获取,而且其还对C/S架构的APP支持,其灵活性低,价格昂贵,但其的自动化测试架构可以重用C/S类型的。自动化测试项目。

、selenium

优点:a)其原理即基于WEB内核机制。其直接运行在浏览器之上,所见即所得,就像真实用户所做的一样。Selenium的核心,也称browserbot,是用JavaScript.编写的。这使得测试脚本可以在受支持的浏览器中运行。

灵活性高,易整合到自己平台,其测试用例可以采用两种方式撰写:testrunner(HTML文件)和driven(脚本语言编写),其语言包括Java,.NET,Perl,Python和Ruby.使用driven脚本,测试有一部分在浏览器之外运行,而如果使用testrunner脚本的话,测试是完全在浏览器中运行的。

开源,且应用较广泛,有一定的技术基础。

缺点:a)selenium不能简单的处理WEB上一些第三方插件,例如:当要从Web上下载一些东西,自然此时就会弹出一个“下载框”,由于那个框框是Windows窗口,Selenium是处理不了的,所以必须通过第三方的脚本处理。

b)selenium是轻量的测试框架,脚本所处理的测试用例构成简单,其实质就是通过HTTP协议,发送请求(request)来完成测试用例,所以很困难处理业务逻辑关系强的测试用例。

应用总结

可以考虑先采用selenium进行预研究工作,将其轻量级的自动化框架搭建出来进行应用。四、应用框架和策略

WEB自动化关注1)Case的选择

尽量采用google提出的721原则,即70%的测试工作在底层接口测试和单元测试;20%

的测试工作在集成测试;10%的测试工作在界面测试。

因此,对于B/S架构自动化测试,原则上若能采用二层的机制(API与底层命令机制)的话,尽量用二层机制;若无,则采用第三层机制,且主要定位在功能测试。2)对业务变更的处理

使用不便的元素进行定位,ID/name。

动态的ID好于没有id,即尽量抓取WEB对象的唯一标示值去识别对象。

动态生成的ID,先利用Beautifulsoup等分析源码,通过属性,text(),css等定位到节点,然后获取id,操作的时候直接利用这个id进行操作。这样好于直接在代码中书写xpath.UIMAP建立元素和一个别名的关联,以xml或者配置的形式存储,

当页面发生改变的时候,只需要更改这个关联文件即可。

因此,原则上要求研发人员在某些元素一定要设定id,name,并且不要改变。展示的目的就是为了确认。

框架的设计思想主要分为三层:

业务(关键字、业务分层)?数据(数据驱动、数据存储)?结果(结果验证、结果报表)?

因此,可以将selenium框架分为三个层次:

appObjects?——Web页面元素定位信息,如按钮与文本框等;

appLibs——测试步骤中可复用

文档评论(0)

hao187 + 关注
官方认证
内容提供者

该用户很懒,什么也没介绍

认证主体武汉豪锦宏商务信息咨询服务有限公司
IP属地上海
统一社会信用代码/组织机构代码
91420100MA4F3KHG8Q

1亿VIP精品文档

相关文档