开发与测试的抉择

栏目: Go · 发布时间: 6年前

内容简介:当我初入职场时,加入的是一家创业公司,做了一名python后台开发。记得那时候团队人力不足,一切的一切都是以完成任务为第一要务,彼时的我们,高歌猛进,连续加班也不觉得累,那时的我,是有激情的,开发上自由度比较大,一切受限于当时的认知水平,完成即可。测试?测试与开发比例为1:6(可能比这个还夸张),而且他们还要兼顾ios、android、运营后台台的测试任务,人力是严重不足的,很多时候,运营人员都充当测试的角色。这样的坏处就是上线前,总能发现很多bug, 于是,在我加入的第一个月,就经历了一次上线,一直到凌

当我初入职场时,加入的是一家创业公司,做了一名 python 后台开发。记得那时候团队人力不足,一切的一切都是以完成任务为第一要务,彼时的我们,高歌猛进,连续加班也不觉得累,那时的我,是有激情的,开发上自由度比较大,一切受限于当时的认知水平,完成即可。

开发与测试的抉择

image.png

测试?测试与开发比例为1:6(可能比这个还夸张),而且他们还要兼顾ios、android、运营后台台的测试任务,人力是严重不足的,很多时候,运营人员都充当测试的角色。这样的坏处就是上线前,总能发现很多bug, 于是,在我加入的第一个月,就经历了一次上线,一直到凌晨4点才勉强结束,心身俱疲。那时,我还没有认识到测试的重要性,可以说不怎么懂得软件工程这件事,很多时候,我们的上线都是粗糙进行,甚至不用测试,质量完全在于开发工程师的水平,那时的我,同时兼顾了好几条产品线的开发与维护,疲于应付,加之水平够菜,很惭愧,跟测试同学关系处的不太好,长期感觉身陷泥潭,这个状况直到我离职前半年才有所缓和,原因是团队人员逐渐壮大,我不用那么费力多线作战,有条件也有精力去开发与优化代码,覆盖更多的测试用例,还有一个原因是我们转用golang,不像python写起来那么随意,golang代码编译成功后, 问题相对就会比较少了。

真正让我认识到测试重要性的是我的第二家公司,也就是现在这家公司。团队是做公司的支付平台的(我们没有支付牌照,只是接其它第三方支付),钱可不是小事,多一分少一厘都不行。开发模式上也发生了很大变化,先出产品需求文档,再来开发设计文档,相关开发测试一起参与评审,一轮不行两轮,直至达成一致,然后开始迭代开发。因为我们微服务模式,在测试环节,是主打接口测试的,这包括出参与入参、接口逻辑、数据库变化等等,开始用typescript写测试代码了,看数据库了,这各工作模式,让我很惊讶,显然,这不是我认知中的测试。不过坦白讲,从工作量来讲,测试要比开发重(虽然刚开始开发也写测试用例,但是发现测试用例的代码比功能代码多出好多倍,逐渐写的少了)。由于这一套开发模式是小团队作战,有问题扭头说一下就行,改完继续,这样的好处是开发测试速度很快,质量也很高,当然,是在没有上线压力的情况下。这时的我,开始参与github项目,开始更加重视效率这一问题,开始写更多的测试代码,当我迈开大步准备修炼的时候,公司发生巨变,有其它团队被并入到支付团队,而且这些并入进来的团队有 Java 栈的,也有 php 的,工作流也各不相同,但都必须转golang,于是支付的兄弟们都去支援新进团队了,我也不例外,没有了强力的评审流程的支持,面临紧迫的上线时间线,还有开发与产品异地的沟通问题,新旧团队的磨合,第三方接口也还在开发中……种种交织,我仿佛又一次身陷泥潭了,这感觉很糟糕,彼时,为了不深陷泥潭,自己不得不扛起更多的开发任务,以致于连续加班一个月,晚上12点还在家里待命或者处理问题。现在看来,我既输了格局,也输了细节。作为项目临时负责人,自己的任务难道不是相信队友,协调并争取更多资源,更多的从全局看待问题吗?

开发与测试的抉择

image.png

两家公司,一家ToC, 一家ToB, 不同的技术栈,存在的问题却是那么的似曾相识,我曾自问,我付出了什么?又得到了什么?让自己手上的任务完成的更好,而不仅仅只是完成;让自己变的更好,让团队变的更好,这一切都要从自己开始:坚持分享与学习。

开发与测试的抉择

image.png

当我重新审视自己的时候发现,我就是想做更好的软件啊,我可是是一名软件工程师?在见识过优秀的开源项目与工程师后,我只能算是合格吧,对新技术有热度,缺深度,对开发是有情怀的,但是天赋与水平摆在眼前,虽然自己不在意年龄,但也确实到了30岁这个传说中的十字路口,我是没法放弃做技术的,理想与现实都不允许我这样做,但却难以染指男主(架构师),不是还有最佳男配吗?开发测试?当我萌生这一想法的时候,被自己惊到了,这是在给自己的不进步找借口?我懂开发,也了解测试流程,但是不懂正统的测试理论,测试 工具 的使用对我来说不是难事,我自己也会用一些工作做测试,我看到的测试问题:流程自动化缺乏,主要在于测试不懂开发,难以定制工具,抽象流程,优点是逆向思维重,而开发正好相反,通常正向思维较重。我的开发经验是优势,劣势自然是缺乏测试经验。但这些都不是问题,关键在于我想做什么?回想着这几年的从业之路,颇多感慨,不过唯一能确定的是,工作固然重要,但是没有成就感也很可怕,做软件的成就感在于产品简单好用,这一切离不开产品、开发、测试、运营、客服等等各个环节,而我,能在测试环节做的更好,能做更好的自己,不存在上坡与下坡(虽然这一想法还是被老婆鄙视了),开发与测试本就相辅相成,渐有融合之势(比如混沌工程开发也未必了解),如果有合适的测试开发职位,为了更好的自己,我愿一试。老婆提醒我,若你觉得做的不好,又想换成开发,怎么办?我坦言,不知道,但是,没试过,怎么知道?或许会更好也说不定的。

前路未知,却又逐渐清晰,我欲乘风归去,不惧琼楼玉宇。

开发与测试的抉择

image.png


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Web Applications (Hacking Exposed)

Web Applications (Hacking Exposed)

Joel Scambray、Mike Shema / McGraw-Hill Osborne Media / 2002-06-19 / USD 49.99

Get in-depth coverage of Web application platforms and their vulnerabilities, presented the same popular format as the international bestseller, Hacking Exposed. Covering hacking scenarios across diff......一起来看看 《Web Applications (Hacking Exposed)》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换