序言:发现好久没写博文了,前段时间,发现很浮躁,别想办法的静下心来,踏踏实实的思考,踏踏实实的做事,一直也在写总结,但却很零散,现在理理思绪,这一段时间,自动化测试很多东西都已经上道了,测试人员也能够去独立完成很多自动化测试任务了,我能够将更多的精力放在软件工程的思考上,那就暂且以软件设计为题,说这一段时间的心得吧。也许认知有限,请指点。
一、自动化测试的阶段认知
很多人都将使用自动化测试工具当做了自动化测试,这样理解也没用错,个人现在看来,自动化测试的几种阶段吧
1、使用者阶段,能够去使用工具,到能够利用工具完成自动化测试任务。这个过程中,也许你需要的是将工具的使用帮助看懂,能够结合你的部门自动化测试需求去使用好工具,对测试理论有所理解。
2、半开发者阶段,能够基于工具进行拓展,例如:基于QTP和RFT等写一系列的框架,这种阶段,就要求你能够懂一些自动化测试思想了,且对工具的API和脚本语言有一些理解了。
3、开发者阶段,能够脱离一些不灵活的工具,大千世界,各种测试开源工具的包能够为我所用,例如:你可以用selenuim操作web的api,abbot操作java界面的api或者写一个脚本驱动库调用CLI来作为一个对象操作底层,自己封装一层数据驱动和关键字驱动层,然后调用然后调用robot的结果api,最终也可以加上husdon来做一个测试任务的触发,根据自己的测试需求,应用各种开源包定制自己的自动化测试架构,当然,你需要能够很深刻的看待测试和自动化测试,能够对各种测试开源工具的原理有所理解(这种理解也是建立对软件开发知识的理解程度,例如操作系统、虚拟机系统、web服务等)
4、设计者阶段,我以前,现在更是认为:自动化测试的大部分效益不是一定来源于一个多大的平台,多少个用例,而是来源于平时的各种测试活动中,无所谓自动化测试,也所谓手工测试,能够找出测试中的不足,能够抽象出测试中的某种理论或者模型。
5、设计开发者阶段,我觉得,所谓的设计开发者,就是知行合一,能够快速的将繁杂的测试需求用自动化脚本替代,能够将一些测试的理论用软件工程的方式验证,能够基于某个测试任务能够快速的开发出易用性的自动化测试工具,不仅提出疑问,而且能够去抽象,去快速实践和证明。
6、商业型阶段,所谓商业型,即是能够真正让整个领域产生巨大价值的推动,这个阶段,我也迷惑,但我相信肯定会有的。
注:也许以上的阶段有的看似脱离了自动化,但是我觉得,自动化是为其测试理论服务的,无论自动化测试还是别的测试技术,都是为了推动测试商业化,能够让测试良好的运作起来。
二、软件设计的思考
再说一说对软件设计的思考吧
很多时候,我们把软件设计想的太复杂了,从而让我们畏惧止步不前,最近在思考,领域是相通的,那么软件设计如何与我们最简单的认知相通呢。
1、软件设计是否好比我们写文章,我们一开始学会文字,不管是学汉语也好,还是学英语也好,我们刚开始都是学语法,就好比软件设计,我们刚开始也是选择编程语言(java、C++、C),不同的语言有不同的应用环境,然后学习编程语言的语法
2、写文章,我们学会了语法,认识了字,但是我们还写不出文章,我们要学习写句子,学编程也是,我们首先要学习写简单的线性代码,很多人认为一开始要学习高深的软件思想,其实不好,为什么C语言基础,因为C语言是教你怎么一步一步写句子,然后组成记流水账似的文档,虽然不好看,但实用和基础。
3、之后,我们踏入了学习写文章了,这个过程,就像我们写一个系统,没有人能一开始就能写长篇小说,每个人都是从最简单的文章开始,我们写代码也是,必须一步一步来,有的人写文档需要打草稿,其实就相当于编程过程中,说的好听可以叫建模,其实就是定义一些接口,组成系统的架构。
4、写文章有很多大纲模板,就相当于写代码有很多框架,你要写成什么样的文章,需要你对某一个情景什么样的感触,编程也是,你能写成什么样的系统,就需要你对业务和协议的理解程度了。
5、所以,软件设计和写文章道理很是相通,领悟力和苦功夫都是必需的,需要我们钻研进去但又不能拘泥于其中。写文章要多写才能出真文采,则软件设计也是一样,要多实践,不要老是望而远之,找借口确实比实践来得容易的多,我们往往太看重结果而不敢上前,但是实际上闭着眼睛只要迈出一步,会发现原来这也是一件很容易的事情,刚开始的话,可以临摹,可以仿照,之后脱离自己写,到最后自己去思考架构,思考文笔,思考“写作”的系统流程。
总结:其实个人觉得:很多人都说,厉害的测试人员不一定要写代码,其实我也同意这种说法,但是,我认为更厉害的测试人员他一定懂软件设计和工程,并且有了一定的理解力,测试人员可以是一个文章的读者,也可以是研究者,挑剔读者能读出文章的好坏,但是却无法指点,而研究者不仅知好坏,还能进行保障,会成为写文章之人的良师益友。对与不对,共勉~
版权声明:本文出自 散步的SUN 的51Testing软件测试博客:http://www.51testing.com/?382641
原创作品,转载时请务必以超链接形式标明本文原始出处、作者信息和本声明,否则将追究法律责任。
====================================分割线================================
最新内容请见作者的GitHub页:http://qaseven.github.io/