十年软件测试老鸟的小小感悟
2017-04-18 00:00
369 查看
摘要: 从2007年毕业以后应聘到外包公司做IBM的软件测试项目,到现在成为业内知名企业的一份子,算算
时间,还有几个月就整整十年了。有时会感慨时间飞逝这个词的含义。这十年的摸爬滚打,让我对
软件测试有了比较深入的认识。做了十年测试,也许会被很多人笑话观点狭隘吧,最近突然有了想
把自己的想法整理成文字和大家交流一下,还请各位高手们勿喷。
从2007年毕业以后应聘到外包公司做IBM的软件测试项目,到现在成为业内知名企业的一份子,算算
时间,还有几个月就整整十年了。有时会感慨时间飞逝这个词的含义。这十年的摸爬滚打,让我对
软件测试有了比较深入的认识。做了十年测试,也许会被很多人笑话观点狭隘吧,最近突然有了想
把自己的想法整理成文字和大家交流一下,还请各位高手们勿喷。
一、软件测试人员的个人定位
之前看过一些诸如“测试人员到底是否有存在的价值”之类的观点。做了这么久的测试,能够体会
到行业是在不断调整的,也许测试人员不被重视,但我认为测试的环节或者说行为是不可能消失的
,所以所谓的“测试人员将会被淘汰”的观点,我认为是庸人自扰的说法。任何岗位都是一样不进
则退,不断学习提高自己的水平,在哪里都不会被淘汰。
二、软件测试人员应该具备的基本能力
身为一个测试人员,应该站在产品的发展上去看待自己的工作,而不是为了测试而测试。而且测试
人员应该比开发人员更熟悉业务需求,要十分了解功能需求,把自己当做最终用户,并了解软件的
每一个功能。
语言方面,必须懂代码才可以和开发人员交流,道理就不多说了。
还有一个很重要的能力,就是文字表达能力。作为一名测试人员,如果可以很顺利的写出一份清晰
的测试报告,让其他岗位能够明确了解测试组的工作和需要解决的问题,那会大幅提高工作效率。
三、软件测试人员的价值所在
软件测试的核心价值 应该是体现在为开发和产品的服务方面:
1、建立产品质量的评估方法
为项目团队提供每个版本的bug趋势分析数据,让项目中的每个人都了解项目当前的状态
通过分析bug数据来建立或完善各种Checklist,帮助项目团队更好的完成需求评审、设计评审以及
代码评审,减少bug出现的机会。同时,可以定期将多个项目的Checklist进行合并,使单个项目的
经验可以通过Test Team快速的流动起来,及时的作用于其他项目
主动为Architect Team提供每个项目的性能测试数据,帮助他们获取更多的实际项目信息,减少踏
入“陷阱”的几率
2、建立可持续运行的测试框架
建立自动化测试测试框架;
构建持续集成,使版本的迭代与更新得到快速的反馈。
3、建立关注开发质量的开发文化
产品的质量应该由开发与测试共同承担,而不是全部加在开发环节。测试人员应该多关注一下性能
、功能、用户体验、操作体验等各环节的情况和场景。(现实中的责任到人,让团队很难形成这种
文化)
4、贡献产品发展
久病成医,测试的产品多了自然会对产品有自己的理解,产品的定位,用户习惯与体验; 可以从测
试的角度贡献产品的发展。(这个由产品的特点,公司文化决定)
四、学会与团队其他成员相处
这个道理适用于所有岗位,作为团队的一员,需要了解其他岗位对你的需求,并及时解决。比如开
发人员,和测试的关系最为紧密,首先应该尝试和开发人员成为朋友,并且寻找如何提高沟通交流
的效率。我通常都是把问题集中在一起,再去找开发人员发问,节省我们双方的时间。
五、避免测试功能点的遗漏,充分关注和利用测试工具
现在很多大企业都在开发测试工具,比如华为软件开发云等等,功能十分强大,可以充分避免测试
功能点的遗漏,不要从心底里抵制创新,活到老学到老的道理,说起来容易,做起来难。如果利用
工具可以缩短项目周期,加快项目交付,那公司和领导也会对你刮目相看。
时间,还有几个月就整整十年了。有时会感慨时间飞逝这个词的含义。这十年的摸爬滚打,让我对
软件测试有了比较深入的认识。做了十年测试,也许会被很多人笑话观点狭隘吧,最近突然有了想
把自己的想法整理成文字和大家交流一下,还请各位高手们勿喷。
从2007年毕业以后应聘到外包公司做IBM的软件测试项目,到现在成为业内知名企业的一份子,算算
时间,还有几个月就整整十年了。有时会感慨时间飞逝这个词的含义。这十年的摸爬滚打,让我对
软件测试有了比较深入的认识。做了十年测试,也许会被很多人笑话观点狭隘吧,最近突然有了想
把自己的想法整理成文字和大家交流一下,还请各位高手们勿喷。
一、软件测试人员的个人定位
之前看过一些诸如“测试人员到底是否有存在的价值”之类的观点。做了这么久的测试,能够体会
到行业是在不断调整的,也许测试人员不被重视,但我认为测试的环节或者说行为是不可能消失的
,所以所谓的“测试人员将会被淘汰”的观点,我认为是庸人自扰的说法。任何岗位都是一样不进
则退,不断学习提高自己的水平,在哪里都不会被淘汰。
二、软件测试人员应该具备的基本能力
身为一个测试人员,应该站在产品的发展上去看待自己的工作,而不是为了测试而测试。而且测试
人员应该比开发人员更熟悉业务需求,要十分了解功能需求,把自己当做最终用户,并了解软件的
每一个功能。
语言方面,必须懂代码才可以和开发人员交流,道理就不多说了。
还有一个很重要的能力,就是文字表达能力。作为一名测试人员,如果可以很顺利的写出一份清晰
的测试报告,让其他岗位能够明确了解测试组的工作和需要解决的问题,那会大幅提高工作效率。
三、软件测试人员的价值所在
软件测试的核心价值 应该是体现在为开发和产品的服务方面:
1、建立产品质量的评估方法
为项目团队提供每个版本的bug趋势分析数据,让项目中的每个人都了解项目当前的状态
通过分析bug数据来建立或完善各种Checklist,帮助项目团队更好的完成需求评审、设计评审以及
代码评审,减少bug出现的机会。同时,可以定期将多个项目的Checklist进行合并,使单个项目的
经验可以通过Test Team快速的流动起来,及时的作用于其他项目
主动为Architect Team提供每个项目的性能测试数据,帮助他们获取更多的实际项目信息,减少踏
入“陷阱”的几率
2、建立可持续运行的测试框架
建立自动化测试测试框架;
构建持续集成,使版本的迭代与更新得到快速的反馈。
3、建立关注开发质量的开发文化
产品的质量应该由开发与测试共同承担,而不是全部加在开发环节。测试人员应该多关注一下性能
、功能、用户体验、操作体验等各环节的情况和场景。(现实中的责任到人,让团队很难形成这种
文化)
4、贡献产品发展
久病成医,测试的产品多了自然会对产品有自己的理解,产品的定位,用户习惯与体验; 可以从测
试的角度贡献产品的发展。(这个由产品的特点,公司文化决定)
四、学会与团队其他成员相处
这个道理适用于所有岗位,作为团队的一员,需要了解其他岗位对你的需求,并及时解决。比如开
发人员,和测试的关系最为紧密,首先应该尝试和开发人员成为朋友,并且寻找如何提高沟通交流
的效率。我通常都是把问题集中在一起,再去找开发人员发问,节省我们双方的时间。
五、避免测试功能点的遗漏,充分关注和利用测试工具
现在很多大企业都在开发测试工具,比如华为软件开发云等等,功能十分强大,可以充分避免测试
功能点的遗漏,不要从心底里抵制创新,活到老学到老的道理,说起来容易,做起来难。如果利用
工具可以缩短项目周期,加快项目交付,那公司和领导也会对你刮目相看。