人工智能的出现会使软件测试岗位的需求会减少吗?
软件测试工程师的需求量会不会减少主要看与IT互联网相关的行业如何发展,如今人工智能、大数据、无人驾驶、无人送货、云计算、区块链等前沿技术飞速发展,就决定了软件测试工程师的岗位会逐渐增加,而不会减少。
而且随着企业对自己产品的功能、性能越来越注重,测试工程师也越来越被企业重视!首先说一下软件行业里涉及到的一些技术岗位,比如功能测试、性能测试、自动化测试、测试开发、安全测试、性能调优等等,这些岗位都是测试岗,在整个工作过程中只是寻找bug,而不用修改bug,千万不能混淆,尤其是测试开发工程师,很多外行人觉得是开发岗,那只能呵呵了!测试开发只不过是使用类似于开发的技术和能力,来达到测试的目的,本质还是测试。举个简单例子,就如同一个人占用自己的身体、自己的时间、自己的精力去扫地,而另外一个人发明了自动扫地机器人来扫地,看起来后面这位更高级,但是实际目的还是扫地。其次就要说到测试的本质,以及外行对测试愚蠢的认知。曾经有朋友前一段时间去阿里面试,测试相关问题回答良好,技术原理理解力,业务熟悉度,测试框架的设计思路,都回答良好。最后考了我两道算法题,回答的不是很好,最终说我技术不太好,offer给的不高。于是我tm就拒了,心中一万句mmp。没想到如此大厂也是对测试误解如此深,因为他们招测试的标准就是在招研发。就如同扫地,你扫地机器人做的再牛逼有用吗?如果你的场景是擦玻璃窗,而压根不是扫地呢?测试的本质是,理解业务,产品和需求。傻乎乎地用研发标准招一坨长得像测试,但是实际是研发的人,就无法保障测试到位。
软件测试是非常靠软实力的,标榜自身技术能力很好,但是半个重要bug都测不出,线上事故一坨,这样的例子见的太多了。接下来说一下测试的进阶形态。测试有两个进阶方向,一个是理解实现原理。也就是你要明白,当前项目里面,业务需求是如何变为设计,再变为代码实现的。代码逻辑层次的耦合,数据库设计,甚至网络层如何通信,拓扑架构如何,都需要理解。注意,理解即可,不需要完全掌握。这样,任何研发行为你都可以明白其意义和风险,你就可以精确设计测试用例,不浪费自己的时间,也不会遗漏高风险场景。另一个方向就是自动化,也就是在简化自身的重复劳动。这个虽然非常重要,但实际上现在成熟框架很多。而且测试框架其实不像研发框架,测试框架优先关注的是易懂性,易用性,交流能力,扩展便捷性。测试人员在选择框架和使用框架时,要灵活,要贴合业务。比如他可以去思考,是否可以把一个扫地机器人改造为擦窗机器人。
最后来正经回答下问题:
1 如果你指的是业务测试外包给阿里做,那这个可以不讨论了。测试外包在十年前就有了,维护一两个专职测试人员,比外包靠谱的多。自己的测试人员理解业务,包就是瞎测,一旦换人就面临很大风险。这也说明了,测试的本质是产品、业务和需求。
2 性能测试和自动化测试是否可以外包?目前行业内就有很多做性能测试外包及自动化测试外包的,比如银行里边之前大部分是功能测试的外包,后来有了性能测试的外包,去年很多朋友做银行外包的又开始招聘接口自动化的人员了!当然,在这基础上要具备一定的银行项目经验,对业务、产品非常熟悉,而且还要有搭建平台框架的经验,这个其实是为难人力资源了,这类人真的很少,物依稀为贵,所以薪资待遇也是非常高的!
3 测试岗位的人数确实可能会下降,不是因为提问里面的原因。而是因为:测试自动化程度变高,手工测试消失(但测试开发会变多),这是目前一个已经既成的事实;另一个原因是开发的测试意识变强,自测能力提升,运维的质量意识变强,线上测试和质量控制体系的建成,这是目前的一个趋势。
4 那么为什么我还说测试人数会变多呢?因为随着软件开发行业的体系化,运营化,质量会变的越来越重要。而测试的软实力,分析业务构建测试思路和用例,沟通作用,流程控制作用,都是更难被机器所替代的。如果说以后机器可以帮忙写代码,做项目,那么最后两个被机器代替的岗位,一个是测试,一个是产品经理。
这个真的要变成现实,有可能人类就全变成科幻大电影里边的一样,用意念操控所有,大家的有生之年很难看到了!
今日福利
柠檬班准备了150个常用Linux命令
课程地址:http://www.lemonban.com/front/couinfo/188
可加小米老师微信:
13327316731
暗号:官网
由柠檬班软件测试培训机构整理