软件开发?设计?运营?这些是我们都能想到的热门互联网岗位,但有一个很容易被大家忽略,但它又是任何一家互联网公司都必不可缺的一个职位,那就是:软件测试。
软件测试,是软件开发的最后一道防线,也是产品上线前最为重要的一个环节。近年来,随着移动互联网、物联网、人工智能等新兴IT产业的迅猛发展,市场对软件质量的要求越来越高,因此企业对软件测试的用人需求逐年上升。因软测的技术门槛相对较低,入门学习周期短,所以有些计算机专业的科班生毕业后直接从事软测工作,也有很多人通过报班培训、自学网络课程等转行做测试。
在一二线城市,刚入行的初级测试基本能拿到7k的起薪,随着从业年限的增加,薪资还会一路上涨。而且就业路线也很清晰,可以走技术路线,从初级测试工程师开始,一直进阶到功能测试工程师、自动化测试工程师、性能测试工程师、测试架构师。还可以走管理路线,从测试组长、经理、主管,一直做到总监。跟开发有所不同的是,测试人员还可以往业务方向发展,比如转做业务咨询顾问、项目经理、质量保证工程师、软件质量管理专家等等,工资也是稳步上升的,前景一片看好。
电子厂有流水线,流水线上有专门的质检人员,简称“QC”,他们的工作就是检测每条线上生产出来的产品是否合格。如果合格就进行下一步包装和发货,如果不合格就要打回重做或者直接报废。
软件测试的工作性质其实跟质检人员大同小异,只不过一个检测的是实体,一个检测的是虚拟的软件。软测人员需要按照一定的规范和标准流程对开发人员研发出来的软件进行相关的测试,如果检测出有问题,就要提出问题所在,交给开发修改,然后再进行新一轮的测试。直到软件达到了用户/甲方/市场的标准,才能进行上线。软测人员的职责在于协助开发人员尽可能在早期发现并提出问题,提高产品在用户体验、安全性、稳定性、功能性等各个方面的质量。优秀的测试人员,可以有效提升产品质量,从而为公司创造更多的价值。但凡做得牛x的互联网公司,肯定设有专门的测试岗,而且给测试人员开出的薪资都很高。
可是尽管如此,还是有一些人对测试的重要性没有感知,他们觉得这个岗位不重要,直接让开发人员去做也是一样的。2020年11月16日中午,澳大利亚交易所(ASX)的新系统在上线后因为出故障而被迫关闭。交易所给出的关闭原因是“局限于单个交易指令中交易多种证券(组合交易)的软件问题导致了市场数据不准确。”虽然证交所在第二天就恢复上线,但在这次事故中蒙受损失的投资者可能很难获得赔偿。
2019年,波音公司为美国宇航局(NASA)研发的载人飞船“星际客机”(CST-100Starliner)发射升空失败。尽管这次任务从隔热板到环境控制到着陆,许多项目都进展顺利,但由于一个小小的计时系统问题,导致了这次飞行任务的失败。
正如要想盖好一栋大厦,必须打好扎实的地基一样。大家不要认为软测技术门槛低,就不需要投入精力去学习。软件测试工作,不管是进行功能测试、接口测试、性能测试,还是自动化测试,都要从测试思维出发,用专业的态度去对待每一个细小的工作。市面上有很多标榜“一周让你快速入行软件测试”“一个月教你从小白进阶为高级软测工程师”之类的课程,试图吸引那些急功近利、浮躁焦虑的年轻人。但我敢说,这样的课程学出来的人基础一定不牢固,基本停留在只会“点点点”的初级阶段,且缺乏测试思维。就算能找到工作,也很快就会被市场淘汰。
事实上,企业现在招测试的要求的确越来越高,且自动化是趋势,只会做手动测试的人,以后肯定会失去竞争力。叩丁狼不仅要让学员达到就业标准,还要确保学员具备竞争力,能在行业内长久立足。接下来,我就来好好介绍一下叩丁狼软件测试学科的课程内容。测试人员首先要具备基础的测试理论知识、缺陷意识,且能够独立编写测试用例和测试报告,这也是日常工作中用到最多的地方,是决定后面的测试工作是否能做好的关键。
这个阶段的理论课程中有详细讲解到测试工程师工作日常,从需求、用例设计、执行、回归、报告计划编写、禅道管理到全流程讲解,并且中间穿梭实战项目演示。
阶段一学完,学员对测试会有一个全面的认知,且能够胜任企业测试的基础工作。
这个阶段的教学任务是培养初级测试工程师,而一个初级测试工程师,必须能够独立完成功能模块的测试。软件测试基本原理、测试流程、测试计划、测试缺陷、测试管理工具、版本工具、接口测试以及postman使用、http原理、移动APP测试、monkey测试、mysql数据库、造测试数据等。掌握这一阶段的内容后,学员能胜任企业初级软件测试工程师,可独立负责企业的软件功能测试工作。现在的企业测试一般都是独立的第三方部门,那么测试环境的维护也需要测试工程师去管理。比如需要重启测试环境,或者需要配置测试环境的端口,那么在该阶段会掌握linux操作系统使用,在此系统上搭建医药管理系统,订餐系统等,能够操作linux系统,同时也为后期性能测试奠定基础。这些工作内容,实际上都是由中高级测试人员去负责的。Linux详解、环境配置、安装部署、日志监控、shell脚本编写、python语言基础掌握这一阶段的内容后,可独立负责企业软件功能测试工作,能够担任中级测试工程师,并且能够独立维护管理测试环境,编写一些常规脚本,提升测试效率。高级测试工程师除了需要处理初中级的一些任务之外,还需要掌握一些高级测试技能,包括自动化测试和性能测试等。性能测试和python自动化测试,能够独立测试系统性能,监控定位,编写性能测试方案,提供性能测试指标数据。能独立搭建自动化测试框架,编写自动化测试脚本。掌握以上内容后,可独立负责企业软件专项性能测试和自动化测试,能担任自动化测试工程师、性能测试工程师、高级测试工程师等,覆盖全方位测试。该阶段主要针对面试经验不足,以及不知道如何展示自己所学技能的讲解,让学员能够有项目面试经验。
文中图片素材来源网络,如有侵权请联系删除
文中图片素材来源网络,如有侵权请联系删除