关闭

软件测试工具设计开发之旅

发表于:2012-11-09 11:02

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

 作者:散步的SUN    来源:51Testing软件测试博客

  序言:一说到自动化测试工具,大家很多人都会想到的是QTP、LR或者selenium之类的工具,要大家一开始设计一个这样的工具,其实确实很有难度,因为其包含的功能细节太过庞大。当年的我,开始设计开发工具的过程中,走了很多弯路,例如:做工具的界面技术的历程,刚开始用tcl/tk脚本语言,用tcl写底层框架,用tk写图形界面,后来发现tk虽然构造图形方便,但可拓展性实在太差。就开始学用java的swing写界面,当时傻傻的从界面的布局,到界面的MVC框架,然后是各种图形的数据结构都是自己一点一点写出来的,但确实锻炼了能力,后来就开始掌握一些现成的图形框架,例如:java里的RCP、python的WxPython和PyQT。到现在更喜欢的是简单web框架,所以,现在将自己的工具开发之路简单分享一下,希望过来人不要走我的弯路,这篇文章虽说是说工具开发之路,但更多的是是一种学习思路,而且这一段旅程还很漫长,我也继续探索,也希望大家能得到一点启示,互相学习。

  一、自动化测试工具浅析

  在做自动化测试的这段日子里,现在也单独设计开发了一些公司对内和对外级别的工具,也设计开发过C/S和WEB方面的自动化测试平台,回首看来,从之前很简陋的工具,到现在客户应用级别的工具,真的颇觉时光飞逝。

  1、界面自动化测试工具,我们往往入门的时候都是用的商业或者开源的工具,例如:QTP、RFT之类,这些都是界面级别的自动化测试,界面自动化测试的有一定开发难度,但是确有不少的开源库可以提供,你完全可以基于以上库开发,或者有一些开源的工具很成熟了,你所做的就是基于以上进行一下更改。例如:测试java界面的工具就有aboot、swbot、mathron等开源工具,测试web界面的有selenium、watin等,测试移动端的有robotium、monkey等。要能二次开发这些工具,主要是需要理解抓取对象和回放的原理,然后是一些配置文件的处理,对象库里主要是XML的处理,一般录制功能我觉得可以忽略。

  2、白盒测试工具,一些代码级别的测试工具,例如:对代码覆盖率的分析、对代码质量的分析等,这方面涉及较浅,就不随便造次了。

  3、接口自动化测试工具,接口自动化测试工具在开发的时候,首先需要明确业务接口类型,然后掌握一定的接口工具的应用方式,一般的接口工具都是会解析某种接口定义文件,然后将接口文件以界面的形式展现出来,可以通过对界面接口的操作:对某个接口填写参数,然后发送到服务器端,查看响应,或者直接get接口返回值。例如:SoapUI工具是针对WebService系统的测试,主要是解析WSDL接口定义文件。Jmeter和LR也可以做接口测试工具,例如:java接口和HTTP接口等。之前,开发过的接口工具包括:SNMP接口和corba接口工具,其原理也是解析mib和IOR接口定义文件,然后可以对接口进行set与get操作。所以,开发这类的工具,一定要明确什么是软件接口、然后接口描述文件是什么,最后是如何去对接口进行操作,日志和结果的展现等,还有一些就是额外的功能了,例如:录制,将测试人员对接口的操作录制下来,成为工作流等。

  4、性能自动化测试工具,看到性能测试工具,大家很容易想到LR、Jmeter之类,这方面的工具,我用的较少,但是会基于自己公司内部的产品一些特殊性能场景方面的测试,会专门开发一些这样的工具,例如:开发一个发送SNMP网络报文的工具,模拟告警最大接收和并发性能,开发一个网元模拟器,能够模拟大量不同IP的网元,可以在公司网元管理器上测试同时管理的最大网元等。所以,性能测试首先要与业务场景相结合,然后掌握一定的性能基础和指标,分析好相关的接口协议和需要模拟的业务,就可以快速开发相应的工具了。

  5、系统应用级别的自动化测试工具,这种工具需要明确应用场景,即明确需求,例如:我之前开发一些部门内部工具集合,专门提供给测试人员进行脚本录制()、公司级别的有采集和巡检工具。(对外支持),这部分工具带来的效益是很大的。所以说,千万不要将自动化测试局限在测试方面,其实提高测试与开发的人员的效率、以及对公司产品的质量保障方面的工具都是能给公司带来直接效益的。也许几行代码也是一个能提升效率的好的工具。

  当然,还有很多方面的测试工具,因了解有限,就无法一一列举了,大家可以补充。

  二、如何快速开发一个自动化测试工具

  1、定位自己,发现目标:首先要看,你是否对软件开发感兴趣,其实我们测试人员往往把开发看得太深,所以很容易就因为觉得困难而不敢开始,如果你对软件确实有一些兴趣,何尝不试试,我们做的,不是要去开发一个多大的系统,我们的目标是能够做提高我们工作效率的事情,让我们的工作变得更高效、更有乐趣,学习知识的同时,还能带来价值,何乐不为。

21/212>
《2024软件测试行业从业人员调查问卷》,您的见解,行业的声音!

精彩评论

  • xsnln
    2012-12-07 11:01:23

    非常好。学习了

  • loveok_56
    2012-11-18 22:28:48

    好,学习了

  • dreamever
    2012-11-09 21:21:38

    刚才评论不显示出来?

  • dreamever
    2012-11-09 21:20:50

    非常好,看标题应该还有后续的文章吧,加油,期待你的新作, 哈哈

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号