传统的自动化测试更关注的产品UI层的自动化测试,而分层的自动化测试倡导产品的不同阶段(层次)都需要自动化测试。
70%的投入为单元测试,20%为集成、接口测试,10% 为UI层的自动化测试。
数据处理层:单元层自动化测试,就是我们平时所说的单元测试或者白盒测试,一般由开发者自己编写,QA人员接触较少。业务逻辑层:服务层自动化测试包括模块接口测试,Web接口测试,API自动化测试也有人叫他是灰盒测试,主要是通过某种工具或者某种框架模拟请求,并对请求的返回做校验。UI界面层:最顶端的便是UI层的自动化测试,也就是现在很多人观念中的自动化测试。UI层自动化做的方式很多,根据不同的系统,不同的架构可能会用到不同的框架或者工具。为什么要画成一个金字塔形,则不是长方形或倒三角形呢?这是为了表示不同阶段所投入自动化测试的比例。如果一个产品从没有做单元测试与接口测试,只做UI层的自动化测试是不科学的,从而很难从本质上保证产品的质量。如果你妄图实现全面的UI层的自动化测试,那更是一个劳民伤财的举动,投入了大量人力时间,最终获得的收益可能会远远低于所支付的成本。因为越往上层,其维护成本越高。尤其是UI层的元素会时常的发生改变。所以,我们应该把更多的自动化测试放在单元测试与接口测试阶段进行。既然UI层的自动化测试这么劳民伤财,那我们只做单元测试与接口测试好了。NO! 因为不管什么样的产品,最终呈现给用户的是UI层。所以,测试人员应该更多的精力放在UI层。那么也正是因为测试人员在UI层投入大量的精力,所以,我们有必要通过自动化的方式帮助我们“部分解放”重复的劳动。
UFT=QTP HP Quick Test Professional 提供符合所有主要应用软件环境的功能测试和回归测试的自动化。采用关键字驱动的理念以简化测试用例的创建和维护。它让用户可以直接录制屏幕上的操作流程,自动生成功能测试或者回归测试用例。目前用于传统行业如:银行。目前版本名为Unified Functional Testing,简称UFT。
Selenium 是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。这个工具的主要功能包括:测试与浏览器的兼容性——测试你的应用程序看是否能够很好得工作在不同浏览器和操作系统之上。测试系统功能——创建回归测试检验软件功能和用户需求。支持自动录制动作和自动生成Java、Perl等不同语言的测试脚本。Selenium 是Thought Works专门为Web应用程序编写的一个验收测试工具。其升级版本为Webdriver。
Selenium IDE是嵌入到Firefox浏览器中的一个插件,实现简单的浏览器操作的录制与回放功能。
Selenium Grid是一种自动化的测试辅助工具,Grid通过利用现有的计算机基础设施,能加快Web-App的功能测试。利用Grid可以很方便地实现在多台机器上和异构环境中运行测试用例。
Selenium RC(Remote Control)是Selenium家族的核心部分。Selenium RC 支持多种不同语言编写的自动化测试脚本,通过Selenium RC的服务器作为代理服务器去访问应用,从而达到测试的目的。
所以,我们在学习Selenium1.0的时候,核心应该是学习RC,它的工作原理是这样的:
所以,我们在学习Selenium2.0的时候,核心是学习WebDriver。它的工作原理是这样的:
Selenium3.0中的Firefox浏览器驱动独立了,以前装完selenium2就可以驱动Firefox浏览器了,现在和Chrome一样,必须下载和设置浏览器驱动。
电话:13644723777
传 真:+86-173-4169
手 机:13644723777
邮 箱:mile@nmgdp.net
地 址:内蒙古包头市昆区昆工路光彩商业街99号