首页 程序猿 软件测试 浏览内容
新手学习测试之软件测试发展情况分析
也许一个人可以轻松上手做测试,但满足现状,长期处于低水平的测试,只能会使得测试会越来越被忽视,测试所能带来的价值也会越来越低,长此以往陷入恶性循环,提升测试地位也就变成空谈。
测试地位的四象限分析,从价值体现和可替代性两个方面对软件测试的地位进行分析。
回归原点,体现价值和重要性不是靠理论和声讨什么,而需要安下心来练习内功,了解不足不断成长。
测试,是完全不同的思路,是一种破坏、重构的思维。
1、价值体现
软件产品是软件价值的载体,开发人员创造了软件,创造了软件价值最基础的形态,开发倍受重视理所当然,而测试呢,测试创造了软件什么样的价值?
质量
测试实践告诉我们,无论经过多么精细的测试,软件仍会有这样或是那样的错误。测试只能证明软件是有错误的,而不能证明软件没有错误。测试促进质量的改进,却不能保证质量做到极致。高质量不只是靠测试,而所有开发团队成员的共同的责任和目标。
更好的产品
领导和客户关注的是最终产品:领导需要按时将软件产品交付给客户;客户需要能够按时拿到软件产品应用于实际工作。好是内在的要求,是理所当然,不会因为软件产品好,领导和客户就会说测试测的好。而反过来,产品出现问题,测试会第一时间受到责问:测试是怎么测的。
对于绝大多数领导和客户来讲,他们只看到也只关注最终的软件产品,而不会也不太可能看到软件产品成长的每一个阶段。他们看到了最终满足要求的产品,却没能看到为了验证产品满足要求,测试所为之努力创建的每一个测试场景。
谁又会想到将第一版的软件产品和最终版的软件产品放在一起做比较会是怎么样的一种结果呢?相信所有软件开发过程中的人都需要很大的勇气去面对这样一个对比的结果。
不可否认,软件测试在软件开发过程中、特别是在大型的软件开发项目中起着重要的作用,软件测试的价值是无法替代的。
不可否认,软件测试的价值是内在的,是附加在软件产品之上的,而非外在的、直接的表现,因此也就不可能被第一时间直观的感受到。
软件测试注定是幕后英雄,耐得住寂寞,软件测试的历程也必定是一场孤独者的旅程。
2、可替代性
是否易于替代决定了地位是否稳固,也决定了地位的重要性,测试工作更容易做吗?
测试入门门槛低。
测试入门技能要求不高,这是事实。我们曾听说过微软这样的大企业招名家庭主妇做软件测试。如果你不懂得开发语言你无法去写代码,而你不懂语言却可以做测试,最不济你可以“点点鼠标,敲敲键盘”做些执行工作,也许你的不按套路会让MONKEY测试更有效。但门槛低并不代表容易做,从入门到山顶需要付出艰辛的努力,需要执着不断前行的毅力。测试的硬功夫不是在入门时就考验到的,而是在实践中不断的学习、掌握、累积到的,随着测试的深入,要求也在不断提高,是个长期的过程。
测试技能要求精于一门,但更多是侧重于广。
测试工作要面对不同的环境、需要模拟不同的操作,因此也就需要尽可能熟悉软件产品应用的各种场景。需要了解产品更多的模块、更多的产品知识,需要随时按要求构建各种测试场景,实施多种测试。测试对于知识技能更多的实际应用,需要快速的理解、学习和应用到实际的测试中,发现问题、解决问题。
测试技能的广而不深就会使人觉得测试没有什么技术,因此随便找个人就可以来做测试。
低门槛和低技能的认知使得测试岗位更容易被团队所忽视,也就容易被替代。也就出现了一些奇怪的现象:做不了开发才做测试,测试做的好了就想转开发,测试团队懂得代码、会自动化的会很牛。
测试工作重复而枯燥,这也是被认为技术含量低、是个人都能干的原因。如果能够将一件重复而枯燥的事情做到极致,又有什么事情做不了,又有谁可以替代的了呢?
总的来看,一些团队测试技能积累不足,对测试编码的片面理解和追求,使得目标偏离了对需求、客户场景的关注,使得测试会处于低水平运作,对于测试的认可程度也会停滞不前。
同时,在一些对软件错误关注度较高的行业,软件测试的作用是无可替代的。
正如火灾一样,预防、补救哪个更重要?
当事实已经发生,需要付出更高的代价去补救。
孰轻孰重,心存侥幸与防患于未燃,两种不同的心境。