探索中小型企业软件测试之道

 
探索中小型企业软件测试之道
 
在ISO、CMM、各大软件企业、IT公司的最佳实践理论宣导之下,我想国内很多中小型软件企业中的软件测试人员会感到非常的迷茫,缺乏测试资源、缺乏合理的测试流程、缺乏重视质量的大环境,这些都让中小型软件企业的测试人员感觉测试工作非常难做,测试的管理者也会不禁发出感叹“软件测试好难管啊!”,我想中小型软件企业的测试管理必须根据自身组织的特点进行个性化的调整,切忌盲目追崇大企业的做法,但是也不能完全抛弃那些最佳实践。
 
我把中小型软件企业的测试管理发展之路分成3个阶段,在每一个阶段中,测试培训、自动化测试、测试流程、测试用例等方面需要不同的做法:
 
(1)初级阶段:“自力更生”。
这个阶段的软件测试非常难做,只能跟着项目走,密切配合进度的要求,质量不可避免地让位给成本、进度。因为大部分中小型软件企业仍然处于起步阶段,最大的困难是生存成本问题,只有尽快出产品、完成项目,才能维持或发展下去。
 
在这个阶段,测试管理流程不会很规范,测试版本可能会由于缺乏合理的配置管理流程而失去控制,测试计划很难制定,基本上是等待开发人员开发完一个功能,马上进入测试,再反复修改、测试…
 
在这个阶段,测试用例基本不够时间编写,或者在早期编写出基本的、粗糙的测试用例,后面基本上不会按这些用例来执行,因为程序的变更过于频繁,缺乏需求控制,另外,测试人员频于应付开发人员提交的测试版本,不会有时间完善和修改测试用例库中的测试用例。
 
因此,有些组织甚至完全抛弃测试用例的管理,不写测试用例。而实际上测试用例的编写还是有好处的,测试人员至少能通过编写测试用例熟悉系统的业务需求(虽然有时候很可能需求文档也是缺乏的!)。“探索性测试”的方法和“敏捷测试”的模式可能更加适合这个阶段的测试人员使用。
 
在这个阶段,基本上不可能开展自动化测试,因为缺乏足够的资源。
 
在这个阶段,测试人员只有发挥“自力更生”的精神,不能期待公司给你很多培训资源,必须要靠自己在工作实践中学习、总结,空闲时找书看、寻求各种网络资料来学习。
 
(2)中级阶段:“英雄时代”。
当软件企业走过艰难的“生存期”后,逐步意识到质量的重要性,市场的“蛋糕”以及分到了一部分,后面就希望通过质量来争强竞争力,摆脱“后来者”的“追击”。
 
当然,也有些中小企业是被逼认识到质量的重要性的,客户的对产品质量的不认可、项目濒临失败的危险,老板意识到是质量控制没有做好,因此下定决心要把质量搞上去,因此成立了测试组或者测试部门,招聘了更多的测试人员。
 
在这个阶段,一般会提拔一两个优秀的测试人员作为测试组长或者测试主管。这些测试人员“临危受命”,誓要把质量搞上去。这个阶段是“英雄”的时代,老板寄希望于这些“英雄”的身上,没有意识到质量要靠全体人员,尤其要靠开发人员自身的质量意识。
 
因为老板给这些“英雄”配的往往是初级测试人员、毕业生。因此“英雄”们需要承担起培训、“带人”、指导测试的艰巨任务。
 
在这个阶段,会效法教科书的做法,建立测试用例库,但是测试人员没有意识到如何充分利用好测试用例,没有充分理解测试用例的“设计”的重要性,停留在表面的测试用例书写上。
 
“英雄”们发挥了一定的作用,建立起一套严格的测试提交流程,尝试进行每日构建、冒烟测试,BUG修改流程得到规范化的控制,老板在发布产品前或者实施项目前会征求“英雄”们的意见。
 
在这个阶段会尝试自动化测试,但是没有受到很好的效果,资源仍然缺乏,尤其是缺乏自动化测试的相关培训,除了“英雄”们,其他测试人员要么对自动化测试“不感冒”,要么没有足够的脚本编写能力。另外,缺乏完善的项目管理、配置管理制度的配合,“英雄”们只能进行非常简单的自动化尝试,并且停留在小范围、个人的尝试。
 
(3)高级阶段:“法制社会”。
“英雄时代”崇尚的是人治,它不可避免地存在很多弊端,例如过于依赖高级测试人员、测试组长或测试主管,没有形成“梯队”,缺乏人才培养的机制。
 
中小型企业的软件测试和质量管理工作如果想再进一步提高,则需要往“法制社会”慢慢过渡,从依赖人转变到依赖制度,大家按制度办事。当然,在中国“人治”的思想根深蒂固,通常都是所谓的“事在人为”,要想转变这种思想不容易。而且,事实上,也不应该完全抛弃“人治”(任何时候,我们都是需要“英雄”、“榜样”、“楷模”的),尤其是在IT业,大家习惯了所谓的“不能扼杀了创造性的思维”,很多人都向往那些“穿者牛仔裤上班,喝着可乐干活”的工作模式,要让这些思维“奔放”的人想工厂的蓝领一样扼守规章制度是很困难的事情。
 
在这个阶段,如果能比较好地过渡到“人治”结合“法制”的管理模式,则软件测试的管理也会相应地规范化,培训会成为常规例行工作,测试用例库会完善地建立,测试人员基于用例展开测试,测试总结报告会被重视,项目的重大决策会依据测试的结果、缺陷的统计分析来定。
 
自动化测试得到正确的认识,由专门的自动化测试工程师来主导自动化测试项目的开展,部分测试用例得以自动化地实现,大部分冒烟测试通过自动化来实现。
 
由于项目管理、配置管理的规范化,测试流程也得以规范化,测试得以有计划、有次序地开展,测试时间和测试资源都基本得到保证。
 
小结
中小企业的软件测试人员通常会很羡慕那些大公司、大企业的软件测试,期待着像他们一样在规范的测试环境下,享受软件测试工作的乐趣,期待得到重视,但是往往由于企业的现状,使得自己的理想无法实现。
 
我想,“怨天尤人”不是一种积极的态度,更多地应该认清现状,然后积极改变现状,努力为自己争取和创造更好的测试环境。
 

你可能感兴趣的:(探索中小型企业软件测试之道)