51Testing软件测试论坛

标题: 成为一个优秀的测试工程师需要具备哪些知识和经验? [打印本页]

作者: lsekfe    时间: 2016-7-18 13:55
标题: 成为一个优秀的测试工程师需要具备哪些知识和经验?
作者:钱蓓蕾
链接:https://www.zhihu.com/question/39085335/answer/107278436
来源:知乎

根据我的观察,优秀的测试人员可以做的事情可以包括如下3点:

1、我们先来讲第一点,由单纯的测试变成项目质量保证工作

测试,从狭义的角度来讲,包括如下这些环节:
测试计划和测试用例编写-测试执行-质量报告书写
测试人员一般会在开发阶段就进行测试计划和测试用例的编写和准备工作;在测试阶段,我们一般先会做功能测试,等项目功能基本稳定,bug较少了,就开始做兼容性测试、性能测试、安全性测试。兼容性测试保证了产品在多浏览器、APP在产品在不同机型下的兼容性;性能测试保证了产品在海量用户大流量下的服务能力;安全测试能发现产品可能会被攻击的各个隐患。做完了这些测试以后,人员发布质量报告,产品上线。

不过,优秀的测试人员需要向上游和下游拓展测试的领域,把自己放在“质量保障”的角色上,推动整个项目组一起保证质量,上游的工作包括:
下游的工作包括:
另外,优秀的测试人员还会发动项目组的其他人一起来保证项目质量,比如推动开发进行代码Review;引入冒烟自测流程,让开发先自测以后再提交给测试做冒烟测试;通过在项目组分析Bug,让开发提高自测,降低Bug数量等;引入策划、交互、视觉在测试阶段进行走查,等等各种措施。

2、持续集成探索和自动化测试技术研究

业界都在说持续集成,那持续集成究竟是个什么鬼呢?

持续集成原本的意思是让开发每提交一次代码就自动化测试一次,如果自动化测试发现问题了,测试用例就会失败,开发就会马上发现这个失败,并修改代码。

要做到持续集成可有很多工作要做。
优秀的测试人员可以把自己的工作尽量自动化,并用持续集成框架串起来,提高工作效率和质量。

3、测试相关工具的开发
优秀的测试人员会开发其他好用、趁手的工具来提高工作效率,比如数据自动生成、报表自动生成、报bug工具等。

其实归根结底就是一句话:测试人员最核心的工作就是保障项目的质量,各类测试流程、技术、工具和平台的发展让我们可以更好地保证项目的质量。



作者: lsekfe    时间: 2016-7-18 13:59
说下知识方面吧,首先计算机基础一定要好!计算机基础一定要好!计算机基础一定要好!
主要几个方面一定要有一定的深刻理解:
1.计算机网络方面:tcp/ip,通信协议(http,soap等)
2.操作系统:Linux,如果是移动端也要看下相关知识,学好Linux其他系统学起来会很快
3.编程语言:不要求你像开发那样多熟练掌握,但最起码编程思想、python等脚本语言要掌握
不要信什么掌握自动化工具或性能测试工具就能高薪就业,工具只是辅助而已,重要的是计算机基础知识和你的测试思路,懂原理才能进行更好的测试,否则测出问题一是不好排查,二是测试数据的真实性有可能都说服不了自己,就不要怪开发看测试报告鄙视你了。
另外,测试基础一定要熟练掌握,最起码做到实际工作中可以随意运用的程度,这方面建议报考下国家软考的中级测试工程师考试,这证没啥用,但学习下来对软件测试的系统理解会有很大提升。
再者多多参加线下沙龙,关注行业动态,多和同行交流,不要一问自动化就qtp,一问性能测试久loadrunner

作者:joy some
作者: lsekfe    时间: 2016-7-18 13:59
我认为成为优秀的软件测试最核心的是为你所负发布的版本负责。
1.在测试开始之前,一定要明白整个产品的业务逻辑,核心的用户故事,用户的操作,而这样的操作到底会对系统带来什么样的影响。最好是把自己当做使用这个系统的人,才会理解系统。
2.在测试中,明白测试的责任并不是提bug,也不是在意这些bug研发到底解决与否,只要研发给解决时限和解决方案,发给产品,研发,上级领导确认即可。这样会大程度的避免与开发的矛盾。其实测试的核心任务并不是提bug,而是模拟用户的各种常用的场景。一定要明白后端存储,系统与系统之间的交互,日志记录,数据库每个字段的变化。
3.版本发布之后,注意发布版本之后系统变化,所修复的bug到底生效没,核心流程受影响没,不要版本发布了就离开。如果用户反馈bug,不要把事情丢给研发或者运维,版本经你手发布出去,要为发布的版本负责,极力复现用户使用场景,督促研发修改,运维发布,直至最终问题被解决。有bug其实是很正常的事情,测试担当责任无可厚非,但是最终要的是解决客户的问题。


作者: seagull1985    时间: 2016-7-18 14:15
根据我的观察,优秀的测试人员可以做的事情可以包括如下3点:
由单纯的测试变成项目质量保证工作
持续集成探索和推动和自动化测试技术研究
测试相关工具的开发

这三点总结得通俗易懂,顶。。。。。。个人非常认同。
作者: jingzizx    时间: 2016-7-18 14:53
总结的太好了,值得每一个测试人员学习和思考
作者: 雨天的月亮    时间: 2020-10-19 10:24
lsekfe 发表于 2016-7-18 13:59
我认为成为优秀的软件测试最核心的是为你所负发布的版本负责。
1.在测试开始之前,一定要明白整个产品的业 ...

说得好
作者: Miss_love    时间: 2020-12-30 13:45
支持分享




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2