软件测试培训
美国上市软件测试培训机构

400-111-8989

热门课程

做软件测试不一定要转软件开发,但一定要懂!

  • 发布:乐搏学院
  • 来源:软件测试资源共享
  • 时间:2018-10-09 15:43

做软件测试不一定要转软件开发,但一定要懂!话说软件测试人员为什么要懂开发呢?你可以理解为提升自己工作效率的方法,也可以理解为与别人拉开距离的捷径, 更可以理解为不被淘汰的手段,所以从这种意义上来说,一个软件人员是需要懂开发的!

《Google软件测试之道》里说到:未来是软件测试开发工程师(SET)的天下。软件测试的开发化似乎是一个不可避免的趋势了。

软件测试人员为什么要懂开发

再谈软件测试的目的

测试的目的,还是发现需求,开发过程中的问题,避免流入到生产环境。所以,用什么手段不重要,达到上线的要求才是根本。

自动化测试真的有用吗?

自动化测试不见得能直接发现bug,那还要来干啥?还有用吗?

1、以前,我们做了很多基于UI的自动化测试。上头给的解释是1.增加上线的信心。2.回归测试节省时间。撇开UI自动化的实现成本,执行中我们确实没发现什么被测系统的bug(发现更多的是测试代码的bug)。由于测试数据准备,网络,UI改变等等原因,调试又花了不少功夫,回头想想,根本没有节省时间。

2、那么,自动化测试到底在哪些方面有用呢?我觉得,最能突出反映自动化价值的,就是性能测试。因为,手动完全做不了大并发或者长时间大容量的压力,使得性能测试完全无法替代。

3、其次,做一些主流程的接口测试或者复杂项目部分方法的单元测试,也是一个有比较高ROI的尝试。尤其是对于多系统的集成,或关键代码的覆盖测试,非常有价值。有些黑盒测试很难构造的测试数据,必须通过接口测试或者单元测试保障,做到分支覆盖或者语录覆盖。

4、最近测试谈的都是分层测试,UI被放在了最顶端,做得也最少。这种理念似乎被广为接受了,说辞是UI变化太大,不值得做。但是,至少从我经历项目来看,UI的变化并没有传说得那么夸张,往往半年甚至一年才经历一次大改版,大部分后台系统很少改动,大家的精力还是放在增加新功能上。所以,个人觉得还是应该提高一些UI自动化的比例。加上Web Driver的日渐成熟,以及Page Object框架维护被测对象,使得UI脚本可维护性也大大提升。即使改版,也只需要更新一些对象的id,name和xpath就可以运行,不妨一试。

5、另外,还有一部分自动化测试开发,会研发一些平台工具类的东西。我个人以为,这些是锦上添花的东西。作为测试开发工程师,尽量还是自己去写代码完成测试,少依赖这些别人搭建的平台。否则,等到丢开拐杖之后,无法独立行走,那就惨了......

懂开发有啥用,到底有啥用啊?

1、测试懂开发,最直观的感受,就是可以看懂代码逻辑,并且做code review。一些不明白的东西也不用老是缠着人家问了,自己看看反而比人家讲得更清楚。

2、其次,可以提升自己的编码水平。反正我学一个新的方法,总是从抄开始的。看不同人的代码,学到不同的实现方式,也是一种乐趣。

3、再次,扩展知识面,有些未必对你写接口测试有帮助,但是一些设计思想,设计模式会对你有帮助。学一些前端知识,数据库缓存的使用,也可以帮助你去开发测试工具,测试平台等。了解打包和发部脚本,也能帮助你维护好测试环境等。甚至后期转行做开发或者运维,都是不错的。

自动化测试知识是手段,不是目的。学习开发知识虽然很重要,但也不应本末倒置。我们应该花更多时间理解业务的实质,设计好测试策略!

测试策略是所有测试活动的灵魂和核心,对于待测系统,其价值类似于隆中对之于刘备,农村包围城市之于中国革命。遗憾的是尽管有很多业内人士在不断呐喊,但对于测试策略的重视程度仍然远远不足。测试策略需要很强的专业领域知识与测试经验,是测试工程师的重要价值所在。

感谢您的阅读,详细通过这篇文章,我们已经将软件测试人员为什么要懂开发讲解清楚了,更多软件测试相关的知识尽在达内软件测试培训机构,敬请关注!

免责声明:内容和图片源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

预约申请免费试听课

上一篇:掌握这些软件测试技能,我们将快人一步!
下一篇:软件测试工程师,这四点说明你已经恋上bug了......

进行性能测试前需要准备什么?怎么做好这些准备?

有了这份常见bug汇总表,将更有针对性地进行bug测试!

软件测试小白请注意:前面是测试用例陷阱,请绕道而行!

软件测试注意事项,全是加班的教训呀!

选择城市和中心
贵州省

广西省

海南省