`
helloyesyes
  • 浏览: 1272020 次
  • 性别: Icon_minigender_2
  • 来自: 武汉
文章分类
社区版块
存档分类
最新评论
阅读更多

不少朋友问测试工程师有什么前途,或者说测试工程师的职业生涯如何规划。有没有想过软件企业又是如何看待测试工作的呢?问题是如果技术总监或者总经理觉得测试工作没什么价值,测试工程师又有何职业生涯何言?

那么这仅仅是软件企业管理层的个人看法问题吗?不见得。俗话说,不见兔子不撒鹰。如果测试工作在某个企业确实没有价值,要求管理层在测试上投资是没有道理的。好比说以今日的科技水平号召大家去月球上挖矿,绝对忽悠不下来。不幸的是,现在国内软件企业和个人的测试技术水平参差不齐,有的跟去月球挖矿差不多难。

所以同样的困惑也出现在软件企业管理层身上:该不该、什么时候、以什么规模在测试上投资人力物力呢?

这个问题了解清楚了,无论是企业决策者还是工程师,都能决定自己的发展策略,从而促进人才供需双方的协调发展。这是决策的第一步,做还是不做。开始做了,我们再谈如何做好做大的问题。

该不该投资测试:测试的价值是什么

对于这个问题存在着不少误解。不如试试从投资方的角度看看,投资之前和之后的差别,带来什么回报,需要投入多少。

投资之前的典型状况:

  • 延迟发布以致损失营收
  • 产品缺陷导致客户拒绝签收
  • 产品缺陷阻碍客户业务进行
  • 产品缺陷影响自身业务或者营收
  • 产品缺陷损害企业品牌价值

简单来说,因为这些状况,投资方要么损失利润,要么增加了开支,要么损害了品牌价值,一句话,少赚了钱。

投资之后的期望状况:

减少上述状况。简单来说,原本少赚的钱可以赚回来若干。

需要投入的资金:

  • 人力开支
  • 设备场地耗材费用
  • 人事管理开支

所以,从投资方的角度来看,原本少赚的钱能赚回来的部分就是测试带来的回报,测试工作本身也需要投入,如果收不抵支就没有投资的必要了。

测试带来的回报,来源于减少的产品本身存在的缺陷,简称为bug。怎样才能减少bug呢?需要预防、发现和修复bug。显然只靠投资之前的团队是做不到的,不然怎么会出现那些状况呢?

那么测试跟bug有什么关系呢?测试工作发现了这些bug,然后这些bug在产品发布之前被修复了,所以少赚的钱被保住了。

为什么强调是“发现”呢?正是因为之前没发现,这些bug才会导致少赚了钱。所以,测试的核心价值,就是发现bug

那预防和修复呢?预防在测试业界一直都是个难题;修复目前要比发现要容易一些,——事实上不少项目里面开发人员没bug可修复,不是没有bug,是产品发布之前找不到。

所以,测试的核心价值就是发现产品中存在的bug;测试可以做更多的东西,但首要的任务是发现bug。这里的所有其他观点都以此为基础,由此而涉及的软件企业测试工作发展和个人测试职业生涯发展也是基于这个观点。

有兴趣的朋友可以读读这本书,The Art of Software Testing,第二版,作者Glenford J.Myers, Corey Sandler, Tom Badgett, Todd M. Thomas,出版社John Wiley & SonsISBN 9780471469124。上述观点来源于此书。

该不该投资测试:投资方期望的测试回报

既然明白了测试的核心价值,那么明确测试能带来的具体回报也是很合理的问题。但是这个问题上的误解也往往会令投资打水漂。

  • 误解一:做了测试产品就没有bug

这个误解会导致在测试上的投资中断,比方说,我投资了若干人力去测试某款产品,bug是少了不少,但是发布以后用户还是反馈有bug,我觉得出乎意料,于是不再投资了,反正虱子多了不咬。

软件产品本身的复杂性以及应用环境和用户需求的易变,让软件产品产生大量的bug,多得没有办法完全清除,或者完全清除的性价比太低。前面介绍的书里面有个很好的例子,大意是哪怕一个简单的一看就明白的小程序(判断三个输入的数字能不能表示一个三角形的三个边长),可以存在的bug也能达到上百个,而且随着应用环境和用户需求的变化还会以指数上升。

合理的期望可以是:做了测试产品的bug会大幅减少。这些bug如果继续存在会带来的损失,就是测试的回报,是可以量化计算的。

  • 误解二:测试需要很大的投入

不少宣传,包括微软在内,介绍测试就像是星球大战一样炫酷的技术和设备。实际上,兵无常势,水无常形。不同的企业和项目可以采取不同的测试方法,一个企业和项目适用的方法,在另一个企业和项目不一定回报投入比就好。

有个大型跨国企业的测试,是一堆人试用一个产品,发现问题就举手,测试经理过去查看,核实是bug就发给开发人员修复,同时奖励发现问题的人。我们看了觉得这个做法很实在,很对他们开发的产品胃口。

  • 误解三:测试不需要很复杂的技术

这是另一个极端,导致对测试投入过于斤斤计较。测试可以从小量开始,那也得分不同的产品和项目。有些产品重于用户体验,人的参与和使用能暴露更多的bug;有些产品重于处理不同的数据,制造理解和分析数据的过程能暴露更多的bug;有些产品重于子产品的整合,把各部件放在一起工作的过程能暴露更多的bug;有些产品重于处理大量的用户请求,把系统置于大压力下能暴露更多的bug。这些产品和项目做测试的性价比是不一样的。为了能暴露更多的bug,有些产品和项目需要复杂技术。

该不该投资测试:投资方如何找测试主管

明白了测试的核心价值,明确了回报期望,投资方又该如何建立测试团队呢?抓住一点:测试团队也是个盈利部门,有业绩有预算,能在预算内有办法确保测试回报的猫就是好猫。

  • 这人自己能发现bug吗?
  • 这人能预计需要哪些投入吗?
  • 这人能承诺找到产品哪些方面的bug吗?
  • 这人能找到合适的测试工程师吗?
  • 这人能明确合适的测试团队组织方式吗?
  • 这人能保证团队的工作效率吗?

该不该投资测试:测试主管如何找测试工程师

测试主管又该如何建立自己的测试团队?这个其实简单多了,一个人无论技术如何强,如果无法做到这两点之一的话

  • 发现bug
  • 了解导致或者阻碍发现bug的做法并尽力避免

这人就不太适合做测试工作。

第二条看上去很奇怪吧。不然,开发过程中有一些做法是人的本性或者项目流程不合理之处所导致的,这些做法要么是导致bug的产生,要么是阻碍bug被发现。

举个例子,一次修改太多代码,容易导致bug的产生;测试不合适的产品版本,阻碍了重要bug的发现。

该不该投资测试:测试工程师如何找软件企业或者测试主管

处于不同职业生涯阶段的测试工程师,适合在不同的软件企业或者测试主管下工作发展。有一些因素是值得考虑的。

  • 你所在的企业,项目或者你的主管需要你找到哪些类型的bug
  • 作为测试的回报,哪些bug占多大的比重?
  • 为了能发现哪些bug,你所拥有的技术深度足够吗?
  • 为了能发现哪些bug,你还需要发展哪些、多深入的技术?那是你下一步所需要发展的吗?

这些匹配上了,个人发展有保证,产出才有效率,投资方得到了回报才会加大投入,个人才有下一步发展的可能。

今天就到这里,下一次我们继续同时就投资方和工程师角度谈谈测试工作的下一步发展。

分享到:
评论

相关推荐

    HTMLTestRunnerNew.py针对《Python从无到有搭建接口(API)自动化测试框架》的测试报告,非此框架勿下载

    与网格正版的有很多改动,只针对《Python从无到有搭建接口(API)自动化测试框架》的测试报告,非此框架勿下载

    测试体系建立

    比较完整的测试体系建立,你可以下载做个参考

    从无到有构建日交易额百亿级交易系统的日志系统

    从无到有构建日交易额百亿级交易系统的日志系统,本课程从无到有带大家手把手实现改日志系统,从中大家可以学习到很多设计思想、编码技巧、高级的知识点,最终该系统是一个可用的高性能日志系统,商业价值极高。...

    从无到有构建亿级微服务秒杀系统(真实工业界案例)

    从无到有构建亿级微服务秒杀系统(真实工业界案例),完整版166节,附源码+课件下载。 本课程采用全新的微服务架构,运用了很多工业界的企业级解决方案和高级技术,带大家手把手实现一个高性能,高并发,高可用等的...

    软件测试规范

    软件测试规范 目 录 一.概述 ............................................................................................................................................................ 1 二 软件...

    软件测试技术ppt版

    因为需要了解程序的设计和代码的细节才能进行,所以部件测试一般是由程序员,而不是由测试人员来做,也许需要开发测试驱动模块或测试工具。      集成测试  对应用软件的各个部件进行组合测试,来检查各功能模块...

    从无到有构建亿级微服务秒杀系统(真实工业界案例)视频课程

    课程分享——从无到有构建亿级微服务秒杀系统(真实工业界案例),完整版166节,附源码+课件下载。 本课程采用全新的微服务架构,运用了很多工业界的企业级解决方案和高级技术,带大家手把手实现一个高性能,高并发...

    测试覆盖率

    相反,国内软件的成熟度比较低,软件开发商基本没有能力来做测试,我指的是专业的、职业的测试,所以从目前来说,国内软件测试的市场空间很大。”  凭着对软件测试行业的深刻理解,武友文意识到要解决国内软件应用...

    测试用例方法总结

     是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例。该方法是一种重要的,常用的黑盒测试用例设计方法。   2.划分等价类:  等价类是指某个...

    从无到有:京东持续集成实践分享

    我今天主要分享三个主题,首先是京东在持续集成的历程,是怎么从无到有的。其次是京东现有持续集成设计的架构以及提供的服务能解决哪些痛点。最后是我们在使用持续集成以后,给京东APP测试流程带来的收益。一、持续...

    测试守则.chm

    帮助小型软件企业解决从无测试到有测试过渡的做法。

    非常实用的软件测试综合资料库

    ②、测试是为了证明程序有错,而不是证明程序无错误。 ③、一个好的测试用例是在于它能发现至今未发现的错误; ④、一个成功的测试是发现了至今未发现的错误的测试。 这种观点可以提醒人们测试要以查找错误为中心,...

    软件测试之手机测试

    我国的手机测试技术从总体上说属于刚刚起步阶段,近几年经历了从无到有的过程。现在的水平基本上能满足手机测试的要求,但是同发达国家的先进生产厂商的差距是全方位的,无论是从实现技术上,流程的规范性与合理性,...

    LoadRunner性能测试巧匠训练营

    , 在内容上,不只是讲解了软件测试,还为测试人员的职业规划和发展指明了方向,从某种程度上讲,这比技术更有价值;, 在实操性上,它绝不是“纸上谈兵”,解决了很多书让读者无法学以致用的弊端,以大企业的真实项目...

    全栈性能测试修炼宝典+JMeter实战

    《全栈性能测试修炼宝典 JMeter实战》是软件测试领域里程碑式的重要著作,由多位培养出经理级乃至总监级性能高手的大师联手创作,本书深入讲解了性能测试实践操作过程中诸多难题的调优心法,实现从理论到实操的升华...

    全栈性能测试修炼宝典JMeter实战(扫描版不带书签)

    《全栈性能测试修炼宝典 JMeter实战》是软件测试领域里程碑式的重要著作,由多位培养出经理级乃至总监级性能高手的大师联手创作,本书深入讲解了性能测试实践操作过程中诸多难题的调优心法,实现从理论到实操的升华...

    微软是怎么做软件测试工作的?

    这里的“技术”指的是具体的战术问题,比如说如何使用某种工具来...特别是当一个软件企业的软件测试从无到有,或者当企业已有一定的软件测试的投入,但发现其实效并不显著,甚至由于测试的引入而带来了新的管理上的混

    AS测试一个个小demo.rar

    在这几个月的项目过程中,无论是单片机还是java都是从无到有。在网上查找了好多资料,几乎每一个功能的在AS上实现都需要用一个小demo去测试下好不好用再移植到项目中去。项目也比较简单,但对于我这种刚开始接触程序...

Global site tag (gtag.js) - Google Analytics