对软件测试进行一场“再”认识

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

对软件测试进行一场“再”认识

软件测试是软件开发行业成熟度更高的产物。

从“成熟度”来讲,软件开发行业的整体成熟度更高,人们对软件开发的理解也更为

全面深入。正因为这样,人们也更习惯将软件测试和软件开发放在一起比较。虽然软件开

发和软件测试都属于产品研发,但是人们的关注点是不同的。软件开发偏向“创造”,而

软件测试却偏向“验证”和“确定”,所以软件开发和软件测试对技能要求也是不同的。

人们将软件测试和软件开发放在一起比较的时候,容易陷入“用软件开发的要求来评

价软件测试”的思维中,只看到软件测试和软件开发相比的弱势,却看不到软件测试自身

的优势。

那么作为软件测试,和软件开发相比,又有哪些优势呢?

一、软件测试的优势

虽然软件测试存在不少困境和迷局,但是这并不能掩盖软件测试自身的优势。

和软件开发相比,软件测试入门相对更容易些。这是软件测试行业的一大特点,其实

也是软件测试的优势之一。较低的“门槛”给了软件测试行业和软件测试从业者更多的选

择余地。一些企业在招聘软件测试人员的时候,不一定只招聘有计算机、通信相关经验的人,他们可能会根据产品的特点,招聘一些更能理解产品和用户需求的人员,如金融、财

会专业的人等,所以软件测试从业者可以是“杂家”,或者说对某些领域来说,“杂家”

反而更适合软件测试。从软件开发相对“封闭”的行业特点来说,软件测试就要“开放”

多了。另外对想改行从事软件研发工作的人来说,选择“软件测试”作为转型的切入点也

是比较合适的。

在软件开发项目中,大多数软件开发工程师都会被分配一个或几个“模块”来编码实现,几个软件开发工程师合作才能完成一项功能是非常普遍的现象。这种割裂式的开发工

作模式,让其中的软件开发工程师很难理解产品的全貌,甚至不知道最终用户会如何使用

自己的产品。相对来说,软件测试人员是产品研发团队中最理解产品全貌、最理解用户的人,这是由软件测试的工作内容决定的。

软件测试人员不必关心产品究竟是如何编码实现的,不必关心用的是C语言还是

C++,不必关心这部分代码是软件开发人员从网上复制下来的还是自己原创的;他们需要关注的是“产品的实现是否和开发承诺要实现的功能是一致的”,这让测试人员自然会去

关注“功能”,理解产品的全貌,而不会陷入实现细节。

软件测试人员还会对产品进行“黑盒测试”,这种看似“摸瞎”的系统测试方法,需

要站在用户的角度分析用户使用场景,所以软件测试人员必须想办法去全面理解用户,不

仅要理解用户明确的需求,还要理解用户“隐形”的需求,如用户的使用习惯、用户行业

潜在规则等。所以在产品研发领域,测试人员才是最理解用户的人。

在大多数人的印象中,软件开发整天面对着电脑,两耳不闻窗外事,十指翻飞只为编

写程序,是一个很“宅”的职业。你千万不要以为软件测试也是一样的,和软件开发相比,

软件测试人员需要有一定的沟通交流能力,这不仅有助于就产品测试中发现的bug和开发人员进行沟通,更重要的是,在很多企业,软件测试人员都会作为产品研发的接口,在用

户出现问题的时候和用户进行沟通。除此之外,想要做好测试,协调能力、风险评估能力、数据统计分析能力和报告撰写能力都是必不可少的“软技能”。所以和软件开发要求“深度”不同,软件测试更注重“广度”,要求软件测试人员是“多面手”,有很强的综合能力。

软件测试的这一特点,让软件测试人员可以有更多的职业外延可供选择。换句话说,

即使一名软件测试工程师在从事了几年软件测试工作后转行其他管理工作、产品工作,都

可以很快上手,并得到认可。这是因为软件测试人员对产品理解,在研发领域可能不够“深入”,但是在非研发领域却做得很好。在广度方面,软件测试人员不会输于其他非研

发领域的从业人员;对用户需求的理解,软件测试人员也不会逊色;而沟通协调、分析总结、风险意识等软能力也能帮助软件测试人员很快掌握新领域的知识技能。所以相对来说,软件测试人员其实更能适应这个复杂多变的社会。

二、软件测试的劣势

客观来讲,和软件开发相比,软件测试也存在很多劣势。

“入门低”虽然给软件测试行业和软件测试从业人员带来了更多的选择机会,但是也

会导致软件测试在软件研发领域的认可度降低,认为软件测试是一项相对简单、没有技术

含量(或技术含量低)的工作。这个“印象”直接导致了软件测试当前的困境和迷局。

虽然软件测试的“出口”看起来很广阔,但是和同在软件研发领域的软件开发人员相比,软件测试在软件研发领域的发展却比软件开发人员有限得多,至少这是现状。我们很

少看到软件测试人员去做产品研发管理工作,成为开发代表、产品线经理或研发总监;很

少看到软件测试人员去做系统架构师(SE)。很多企业,软件测试在管理上的职位,最高就是测试代表或测试经理,在技术上甚至没有职位,没有发展方向。

如果从业者的职业发展目标本就不在产品研发,而只想熟悉产品,那么软件测试无疑

是获得这项经验一种很好的实践;但是如果从业者的目标就是软件测试,最后却“被迫”

转岗,这样的“宽出口”就不是“优势”,而是当前软件测试的无力之处了。

相关文档
最新文档