自动化测试框架比较

发表于:2012-9-07 10:12

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:jacksonren1987    来源:51Testing软件测试网采编

  最近在研究自动化测试框架,也和网上的很多朋友聊了很多各种自动化框架的实现,我对其总结归纳比较下。当然,一家之言,仅供参考:

  1、以QTP为核心的框架

  QTP是大家最常用的测试工具。而现在很多公司用的自动化测试框架都是以此为核心的。我在触自动化测试之初最先上手的也是QTP。

  以QTP为核心的自动化测试框架优点在于:适用性好,很多人都已经会用或者至少说可以简单应用,脚本也简单易懂,大多数无任何代码基础的测试人员都可以加入脚本录制和调试。

  我本人一直对QTP不太感冒的原因也就是它的缺点:对象库。这个词对自动化测试的tester们实在是个巨大的打击。我不去一一细数其罪行,但是,关键字的框架,灵活度实在不敢恭维。再加上QTP在对flex等的支持上实在是也让人欲哭无泪。如果说还有其他的,就是一旦应用于企业自动化测试框架,必然需要购买正版,价格的问题。。。

  2、RFT

  Rational Functional Tester,IBM的产品。我一直对ibm产品颇具好感,不知道是不是由于第一台笔记本就买了IBM的缘故。跑题了,回来说这个框架。

  优点:其一是相比起QTP框架,灵活度要高。因为它最核心的find()。每个脚本里都会大量出现类似“new uiTestObject(find(atDescendant(".xxxx","xxxx",".xxxx","xxxx")))...”的语句,用来动态查找对象以解决对象识别问题。其二是对java的无缝连接,让很多人能更好更快的上手。

  缺点:首先还是俗一点,说这个价格。高于QTP的价格让很多公司难以接受。第二,尽管ibm的团队非常强大,但是我们可以看到,由于种种原因,RFT的使用率比较低,这就导致网上关于该框架的疑难问题解决方案较少。第三,根据亲身经历,RFT的国内技术支持太弱,有问题很难请到,并且其技术支持人员测试技术能力都较差。

  3、Ant+Selenium+Testng+Jenkins

  这是我现在正在研究并使用的框架。(ps:jenkins这...还没用到。原来听说了hudson的强大,这个升级版估计会更有使用价值,未来研究)我这里说的selenium没有区分RC还是webdriver,两者各有千秋又互相补充,兼而用之即可。还是先说优点:第一:它开源不要钱!很多时候这是最关键的一点..当你在研究或推行一套框架的时候,价格是不得不考虑的因素。第二:灵活性,比RFT更加灵活,因为更加入了xpath(当然大型项目的脚本里xpath..慎用,尽量取id或稳定的属性)。加上配合IDE进行定位等,效果比较好。第三:相比rft,资料更全面,用该框架的也越来越多。据我了解,北京一些中型公司也在应用类似以selenium为核心的自动化测试框架。第四:就是开源性可以方便我们进行二次开发,例如提取对json和xml的处理来实现的数据驱动等。

  缺点:第一:无论是RC还是Webdriver,对测试人员的编码水平有一定要求。同时ant,testng,hudson使用也都是小众,大多数人执行这个框架前需要有较长时间学习适应。第二:毕竟时间较短,不如QTP如此完善,但是我们可以期待其未来发展。也许3.0会带来一个巨大的变化。

  4、Mcafe

  我也不知道是不是这样拼这个框架,这是百度内部使用的一套自动化测试框架,或者叫平台。外面当然也买不到,我有幸见识了一次,包含了虚拟机的集成分配直至自动化测试执行,非常之惊艳。优点一大把缺点就是买都买不到。。。也给了我们一个方向,自主开发的自动化测试框架也许才是最适合你的。

  欢迎大家发表意见。

一篇看不够?你需要的是这门系统专业课程:

RobotFramework自动化测试框架快速入门
《2023软件测试行业现状调查报告》独家发布~

精彩评论

  • Rain_Rain
    2016-3-10 16:14:47

    robot framework怎么样

  • onedayday
    2015-1-20 14:11:10

    qtp 可以使用描述性编程,不需要对象库,这样使用起来很方便,而且页面上定位元素很方便,即使那些js的对象,也方便找。vbs虽然不强大,但是可以引用外部的插件,实现很多自动化功能,价格嘛,用破解的呗,很多公司就用破解的,一个公司真要使用,还在乎这点钱,请几个selenium人的价格早就超过qtp的费用了吧。

  • br1823
    2012-9-07 21:33:14

    Ant+Selenium+Testng 的整合 参见:
    http://bbs.51testing.com/thread-747524-1-1.html
    Jenkins 只需要部署一下 然后再简单的配置就可以跑起来了

  • wenhan_Corrine
    2012-9-07 16:29:52

    请教一下 :Ant+Selenium+Testng+Jenkins 如何使用

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号