本文先对互联网对时代和社会变革进行了论述,然后再由互联网时代对软件工业模式变革进行了介绍,最后引出附属于软件工业的测试行业在新形势下的需求变化,并对趋势进行了分析,并最终给出了相关的从业人员的职业发展建议。
本文开题较宏大,但最后仍然会汇集到具体的测试行业的话题上来,为了避免被大家误解成“虎头蛇尾”,特做如下申明:
高晓松在一期《晓说》的“大航海主题”节目里面提到,他认为目前为止,他觉得 人类历史上最伟大的两项发现是:
两样东西都有一个共同特点,就是将这个世界抹平了,让当时的人们能够以全新的视角和思维认识这个世界。
大航海时代伴随着地理大发现,让世界的各个地方的独立孤岛融入到一个世界观中,形成了文化大碰撞,物种大交换,人类大移民。
一些主要的冲击体现在:
粮食物种大交换
欧洲人从美洲引进了土豆和玉米,最低产的土豆也是最高产的小麦的18倍,而且不依赖水。,高的可以达到几百倍。极大解决了欧洲人的农业生产力问题,而且这两种作物被引入中国,促使中国在康熙年间人口终于突破了1亿,达到空前繁荣。
病毒大交流
欧洲人给美洲带去了欧洲的疟疾,并从美洲带出了天花。导致两边的人都出现了极大的死亡率。
矿产大发现
西班牙人在南美洲玻利维亚发现全球最大银矿,产出了40亿俩白银盛产白银,而当时的超级大国中国明朝一年的财政收集才几百万两白银。导致当年西班牙一跃成为世界最富有的国家,能够买下全世界 。购买力极强的十亿白银大量涌入中国,形成了巨大的通货膨胀,间接导致了后面的禁海和闭关锁国,以至于后面远远落后于世界化进程。
人类大移民
最早白人集中在欧洲地区。但是大航海时代的地理大发现导致现在 美洲,非洲,大洋洲和东南亚洲到处都是欧洲白人的地盘了。
这系列的事件,影响了后面的整个世界的地理,政治和经济格局。
上面谈到的那些事件和如今和互联网时代存在太多的相似性。
每当我向别人宣扬互联网的巨大力量时,总会有人提出质疑:互联网这个东西并不像制造工业那样产生一些实际的东西,但是现在如此的热,肯定会出问题的。
我认为,互联网不产生新的实物,它就是增加效率,优化资源配置,抹平信息鸿沟,制造更平等的认知世界的机会。互联网为何这么热,原因在于我们这个社会运行的状态是很低效的,信息很不对称的,所以互联网每进入一个领域,都会带来这个领域的巨变,互联网的动作模式会把传统的动作管理模式的规则全部给颠覆,如果传统模式不做出改变,只能被狂风扫落叶的扫出历史进程了。
关于IT行业的前几十年发展史,有兴趣的可以推荐吴军博士写的《浪潮之巅》,作者以浪漫主义的笔法书写了IT行业的几十年和恩恩怨怨和浮浮沉沉· [2]。
下面本文将主要列举近十年(2005~2015)年来,IT行业的一些重大事件。
晓说.大航海系列-黑人奴隶地位高要天价.20140110 |
吴军.《浪潮之巅》.2011 |
生长在这个时代的年轻人,要么创造了这些历史,要么见证了这些历史,要么现在正在创造这些历史。
前面陈述了各方面的东西,其实总结为如下几点:
可能不是所有的人都清楚,虽然同叫IT公司,但是IT公司还是可以分成两大类的:外包项目驱动型公司和自主产品驱动型公司。
在百度百科里面对“外包”进行了如下的介绍:
企业在管理系统实施过程中,把那些非核心的部门或业务外包给相应的专业公司,这样能大量节省成本,有利于高效管理 。
整体来说,绝大多数的外包具有如下特点:
这一类的传统IT公司公司目前对外包装都是“提供IT解决方案”的公司,比如:像东软,软通动力等等是比较典型的。这些公司的销售经常会在各种招投标现场看到,或者在华为公司里面有些外公司的人,很多就是这些公司派去驻场开发的,里面的员工往往会有一种“同工不同酬”的失落感。
这一类的公司,个人认为会面临逐渐被集中到少数的大集团里面,或者分散在一些兼职的个体软件工程师中。因为这项服务确实是一直被社会所需要的,社会的的更改化发展也肯定是专人做专事,外包肯定不会消亡掉。这个市场会一直存在,但是从业人员的营生类型属于赚一些辛苦钱,拼个体力而已。
百度百科.“外包”词条 |
这一类公司,大家比较熟知的主流互联网公司基本上都属于这一类型的。这一类公司具有如下特点:
目前国内这一类的主要公司有:TABLE互联网五巨头。
在传统的软件工业,软件产品以光盘为载体以类似于实物的方式进行生产和出售,软件的产出方式也是严格遵守软件工程的流程。
这样的的生产方式和传统的制造企业是极其类似,而且如果这种模式发展下去,肯定会越来越照搬传统制造企业的模式,因为都是需要追求流程的标准化,这样才能够保证生产和规模化和有序化。
在传统的项目驱动型的软件企业里面工作过的软件开发人员一定印象深刻:
为何要这么严格的评审流程,为何要如此多的开会和文档?其实上面提到的那些行为都只是操作手段而不是目的,真正目的在于为了防止以下情况的发生:
避免甲乙双方纠纷
从提出需求,到最后完整当初约定的功能软件,周期较长,往往存在相当多的不确定风险,对软件项目的参与者进行协议上的约束,所以需要和甲方进行沟通和文字记录,同时开发人员
减少沟通成本
因为周期长,开发人员众多,减少沟通成本,必须要尽量多的文档。
这些都是建立在一种信息不对称,信息流通不顺畅的年代所产生的开发过程。后面将提到一种新的软件生产思路。
这是在互联网兴起之前的年代的一种软件生产思路。
主要开发流程如下
主要的特点如下:
这种开发模式的最大特点是:快!
迭代速度快。
新功能发布并呈现在客户面前快。
问题的发现快。
问题的解决速度快。
如果方向不对,项目死掉的速度也快。
这其实是优点,如果是坑,及时能够暴露出来也是好事
前面提到的两种公司和两种模式,目前在中国都存在相当大的市场。从个人的角度来说,更看好自主产品型的公司及开发模式。
本人第一次创业经历,就是长达两年的时间开发一个大型软件系统,最后都没有成功交付而胎死腹中。这次惨痛的经验教训,让我从此以后对外包型的创业模式深感恐惧和抵触心理。第一次创业里面做的项目,很累很累,很用心很用心,同时结局也很惨很惨。
第一次创业失败之后,又加入了现在的这个创业团队。是一种完全的互联网经营和生产模式,完全是一种久旱甘霖的畅快感。作为开发团队的一员,你的代码时刻都在生产服务器上运行着,每天开发的功能都在线上发挥着作用,你敲下的每一个字符都发挥着它的作用,而且为后面的开发在铺路。
前面花了很大的篇幅来讲大背景和大变革,现在才正式开始进入“软件测试”这个议题。个人认识还是很有必要。因为大部分开发人员都是思想和交际圈子相对比较简单的群体,打交道的对象往往是代码或者机器,往往不愿意跳出技术的思维和习惯,从更高的视角来审视自己做的事情。因为我以前就是这样的一个技术人员,往往把所有的路线选取寄托在别人身上,而且自己缺乏独立思考的能力,结果导致自己虽然很努力,但是却总是达不到自己想要的效果。
作为普通一个人,必然无法避免个体命运会随着大时代的背景进行浮沉。具备独立思考的能力相当重要,能够洞察趋势,顺势而为,必然会事半功倍。
软件测试(英语:software testing),描述一种用来促进鉴定软件的正确性、完整性、安全性和质量的过程。 换句话说,软件测试是一种实际输出与预期输出间的审核或者比较过程[4]。
不管是传统企业还是IT企业,都会有这样的一岗位,叫QC(QUALITY CONTROL的缩写,中文“质量控制”) ,专门负责品质控制的。在制造企业里面是对具体的物品进行 相应的质量检测。
不管是实物工业生产还是软件工业生产,最终的目的都是将产品交付给相应的使用人或者使用场景,使产品稳定的发挥其作用。那么既然存在交接,就必然存在验收。而关于产品的问题的发现,从生产方来说,最好是在内部就能消化和解决,而不是到投放市场之后由用户来发现,那样会对产品和企业形象都是很大的损害。所以每个企业都需要这样一个角色,用来做质量审核和把关。
在传统实物生产工业,产品质量控制主要划分为4个阶段 [5]:
同样在软件工业,特别是目前外包或者众包的协作模式逐渐兴起,软件工业也逐渐像实物工业一样形成了所谓的供应链,也一样产生了如传统工业的品质控制岗位。
总之,软件测试是在软件工程里面交付可靠软件的必要步骤。具体有有兴趣的可以查看软件工程相关书藉。但是查看这些的时候,请只看软件测试的定义及在软件工程中所扮演的角色部分,后面的具体操作手段可以忽略,因为随着近些年互联网和移动互联网的掘起,很多传统的软件工程组织方式和理念已经严重落伍,已经逐渐被行业给淘汰,作为软件工程中的一个环节,软件测试的手段也发生了巨大变化,这个在后面会谈到的。
百度百科.'软件测试'词条 |
(1, 2) 百度百科.‘QC’词条 |
关于从业人员的体验,以下论述事实都来自于当下热门社区“知乎”。
如何成为一个优秀的软件测试人员?
QA在中国有前途么?
文章主要观点:
如果说知乎上的个人的回答可能会带有浓厚的主观色彩,或者说是个人认知的局限性。那么来自人才市场的需求应该能够成为比较客观的风向标依据了吧。毕竟,规划自己的职业方向的主要目的无非是如下两点:多看一些相关话题及相关人员的回复,可以明显感受到测试岗位正在朝着”自动化,专业化和技术长线化“的方向在发展了。
本文通过对2015年5月份来自互联网的垂直招聘网站 拉勾网 的测试相关岗位的招聘要求和薪资待遇进行了研究。
关于测试岗位,工资差异很大,要求的差异也很大。
以”测试“为关键字进行职位搜索,发现出来的岗位待遇差异巨大,下面将针对不同的薪资结果来举例对比。
京东
要求
待遇
10K~20K
小米
要求
待遇
15K~30K
阿里
要求
待遇
20K以上
腾讯
要求
数据结构
算法
数据库
进程通讯
网络协议TCP/IP
性能测试/性能优化/安全/容灾
软件工程理论和测试理论
基本工具使用
待遇
10K~20K
武汉神微资讯
要求
待遇
3K~5K
软通动力
要求
待遇
4k-6k
卷皮网
要求
待遇
4k-7k
通过对更多的高端测试岗位的技能要求做总结,绘制出如下的一个技能和事务树,供大家参考:
自从离开校园之后,很久没有沉下以来认真地写点东西了。主要是自己在刚跨入社会的时候,犯了一个很严重的错误,总是想用”战术的勤快来掩盖自己战略的懒惰“,一直忙低头做事,而很少停下来冷静地独立思考。还好,现在开始有这个意识,也不算太晚。
以上的内容一方面是对自己这三年思想转变和职业规划转变的总结,同时写出来,也希望能够对走在相同道路上,同样有过困惑的同行们多一点借鉴参考吧。
以上所有的结论都源于:
虽然说尽量让依据来源丰富化,但是在在选材过程中肯定难免带有一些个人主观色彩,而且作者的经历也不能代表大家的经历,所以分享此文出来,还希望此观点能够传播出去让更多的人看到,正如前端的互联网产品的开发思路”让产品尽早上线,尽早接受更多的用户考验,好坏自然分明“,所以欢迎大家来 点赞或者拍砖。
这是后续的软件测试系列的第一篇,先以概述来定基调和方向。后面将分享此基调和方向下的相关技术和手
最后:下方这份完整的软件测试视频学习教程已经整理上传完成,朋友们如果需要可以自行免费领取 【保证100%免费】
这一些资料,对做【软件测试】的朋友而言应该是较为完整了,这类学习资料也陪伴我走过了最艰难的路程,希望也可以帮助到你!万事要尽早,尤其是技术行业,一定要提升技术功底。