前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >常用功能自动化测试工具汇总

常用功能自动化测试工具汇总

原创
作者头像
testwalkman
修改2020-02-28 14:15:36
2K0
修改2020-02-28 14:15:36
举报

话说自动化测试方面的工具还是非常的多的,不可能也没有必要查看了所有的测试工具;个人觉得当学习众多同类知识或相关主题时,分几步走: 1、学习所有同类知识的共同理论、原理部分【此为共性】 2、学习所有同类知识的独有特性、技巧部分【此为个性】 3、根据具体的实际场景,适当的运用所学知识的【即运用知识的个性部分去解决特定的问题】 学习自动化测试工具也是这样的,之前不愿意学习太多是怕混淆视听,现在对原有知识已有了一定的固化认识【即了解了基本原理】,也就可以从新学习个性化的东西了;而这一步正是为了以后能够适当运用所掌握的知识,顺利的进行自动化测试任务的开展和实施。其目标达矣!

商业工具:

1、RFT Rational Functional Tester 的基础是针对于Java、.NET的对象技术和基于 Web 应用程序的录制、回放功能。工具为测试者的活动提供的自动化的帮助,如数据驱动测试。 IBM RFT是一个用于功能和回归测试的数据驱动的测试平台。它支持大范围的应用,例如.Net、Java、SAP、Flex和Ajax。RFT使用Visual Basic。Net和Java作为脚本语言。RFT有一个独特的功能,称为 Storyboard 测试,用户的动作被记录下来,并通过应用截图在 Storyboard 格式中可视化。 RFT的另一个有趣特性是它与IBM Jazz应用生命周期管理系统(如IBM Rational Team Concert和Rational Quality Manager)的集成。

2、kylinTOP: 这是一款国产的自动化测试工具,支持WEB和APP的自动化测试,其中元素智能定位是这款自动化软件主要特点,是设计理念比较超前的测试工具,算是国内众多自动化测试工具中,做的比较突出的一款。与传统的RFT和UFT相比,的确有过人之处,算是后起之秀吧。 官网:http://www.70testing.com

3、UFT: UFT(别名:QuickTest Professional简称QTP)是一种自动化测试工具,以VBScirpt为内嵌语言,其前身是QTP。UFT支持功能测试和回归测试自动化,可用于软件应用程序和环境的测试。UFT自动化测试的基本功能包括:创建测试、检验数据、增强测试、运行测试脚本、分析测试结果、维护测试;UFT支持两种视图,一种是Keyword View(关键字视图),另一种是Expert View(专家视图)。是一款老牌的自动化测试工具。

4、SilkTest: 这个也是比较相对著名的工具,不过同样还是没有了解过,对于商业的工具,因为其占地面积大,还要破解等麻烦事,最关键的是使用的公司少,所以只使用过QTP,其它的一概未了解过

开源工具: 1、Selenium: 这个应该大多数人都知道的,现在也是大多数互联网公司在使用的测试框架;selenium仅支持web的UI级别测试,但是其优点在于: a、支持多种语言编写测试脚本,比如:java、python、ruby、perl等;同时也就意味着其后的支持类库也是很多的 b、支持多浏览器,如:ie,ff,safari、chrome等 c、支持多平台,如:windows、linux、MAC、android、iphone等 d、支持分布式执行,一套测试用例可以同时分布到不同的测试机上执行,而且还可以进行任务细化,比如:针对liunx执行系统只分配linux下需要执行的用例 此外还有录制工具支持,简单也说,web类测试基本上是首选,不过对flash的支持好像不是太好 其主要分2个版本,1.X版本是以js驱动来进行自动化实现的;2.X重新开发了webdriver来代替js驱动,直接调用浏览器底层接口来完成自动化实现的 前提:如果使用remote或者RC功能,需安装jre 下载地址:http://seleniumhq.org/download/

2、EFT【easy function testing】: 这个是在.net3.0 的UIAutomatuon的基础上封装的一个dll文件,同样还封装了部分windows api以实现鼠标和键盘事件。所以这个只能叫测试类库,且仅支持windows程序,而且同样支持uiautomain所支持的WPF程序的测试。 前提:安装了.net3.0 使用:引入该文件,uiautomation 相关dll,VS环境下编写测试用例

3、UIAutomation: 这个是微软提供的UI自动化框架,当然它的初衷并不仅仅是为自动化测试而产生的,它的任务是给更多的开发或者应用去调用windows的UI控件,不过还是可以用于自动化测试的;因为之前微软就有类似的工具,而这个是重新设计的ui操作类框架,其目的是为了兼容支持windows系列操作系统的UI自动化操作【xp,vista,server2003】,还有就是天然支持WPF。当然其设计与通常的自动化工具就不一样了,比如:没有把控件支持的方法绑定在控件对象本身,没有提供专门的鼠标/键盘事件,但是却提供了特定控件对象的事件响应监听及处理方法的定制。其工作流程大概是这样的: a、先获取特定的元素对象,有多种方法。如:句柄,属性值 b、获取这个元素对象的模式。模式是这个框架的设计的独具之处,成就了它的灵活性,统一性 c、通过这个模式在进行具体的方法调用,属性值获取等 d、监听指定对象的特定事件,一旦发生则执行指定的事件处理函数

4、Robot Framework Robot Framework是一个完全基于关键字测试驱动的框架,它即能够基于它的一定规则,导入你需要的测试库(例如:其集成了selenium的测试库,即可以理解为操作web控件的测试底层库),然后基于这些测试库,你能应用HTML、TXT等文档形式编写自己的关键字(这些关键字即你的库组成),之后,再编写测试用例(测试用例由测试关键字组成)进行测试。例如:一个简单的登陆测试由:登陆+输入密码+登出三个关键字组成,也可以由一个关键字登陆组成,关键字颗粒的大小可以自行定制。

总结 最后才是干货,掌握和了解这么工具为嘛使,不能总是为了好玩,而是为了能在以后的自动化实施过程中用于支持策略的制定;比如新接收了一个测试项目需要进行自动化实施,那么需要考虑哪些点?使用哪个工具,有哪些工具可以作为备选?那么自然就要对常用自动化工具有一个初步的了解,同时对影响自动化过程的其它元素也要有一定的掌握,不过这里可以跳过,这里只是说与工具相关的因素的抉择。大体可以分为如下来考虑:

1、考虑被测试产品的类型,B/S,,C/S,web service,SOAP,SDK或者API;过滤支持某类功能测试的工具 2、考虑是否支持录制,可以录制就相对于说开发效率有较大的提高 3、考虑工具的价格,通常首选开源或免费产品 4、考虑工具扩展性,可能某类工具可以支持现在的业务需求,但日后需求有变化的话,是否有很好的扩展性,支持被测产品的新特性,如flex,flash,wpf等 5、考虑工具的支持性,即后期的升级及版本更新的特性,不要选用即将不再支持的工具 6、考虑工具的广泛性,即这个工具在外部的流行程度,这样以后招人容易,有问题也有较活跃的社区可以求助 7、考虑工具的成熟性,即这个工具不能还在beta版本,需要有一个较稳定的版本,而且估计较长时间内不会有大版本的更迭 8、考虑工具的可开发性,即工具是否提供插件接口,用于可以自定义自己的基础类库和识别机制 9、考虑工具的易用性,即是否有强大的后台支持,如windows、.net、java类库支持 10、考虑工具的适应性,即是否容易被封装,可以很容易被嵌入或引入到其它的框架中,比如:功能框架被引入到执行框架中 11、考虑工具的针对性,即如果有专门的针对性工具可选,自然比那些综合性很强的工具其适用性要高的多了

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
微服务平台 TSF
微服务平台(Tencent Service Framework,TSF)是一个围绕应用和微服务的 PaaS 平台,提供一站式应用全生命周期管理能力和数据化运营支持,提供多维度应用和服务的监控数据,助力服务性能优化。提供基于 Spring Cloud 和 Service Mesh 两种微服务架构的商业化支持。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档