今天,主要想跟大家聊聊软件测试那些事,新手小白也能学会。也想写一写自己的职场感想,希望对刚开始工作的小伙伴能够有些帮助或启发。顺便说一下进入软件测试这个行业后持续努力的方向,供各位想转行做测试还没转的、已经转行做测试但时间不久的、刚刚进入测试领域的,这几类的小伙伴都可以参考下。
一、为什么这么多人选择IT行业?
我首先说个现实问题吧,“什么行业工资高?发展前景好?”大概能同时符合这两个标准的,也就非IT行业莫属了吧。而且,IT行业一直都是比较火热的行业,热度居高不下,很多人转行都会把IT纳入选择范围,我本人就是典型的例子。
毕竟,IT作为一种新型的产业,短短十几年的发展,就成为国家的重要经济支撑点,政策也是大力支持的,还有其他行业无法相比的优势。
1. 薪资高、前景好
随便去某招聘平台转一圈,工资都是好几十K往上走,实习生工资也能月入过万。而且,也有数据显示,IT行业的薪资已经连续5年位于各行业收入排名第一位。不管是大厂还是小型企业,收入都领先。
2. 市场需求大,缺乏高端人才
未来5年,我国信息化人才总需求量高达1500—2000万人,软件开发测试、 络工程缺口较为突出。而且IT行业需要的是技术型人才,高校的培养与企业需求严重脱轨,缺口自然越来越大。高端人才在企业是十分受欢迎的。
3. 技术工程师一般为通用型人才
虽然IT行业可能在很多人眼中,就是个敲代码的啊,但是这个通用型人才很吃香好嘛,完全不限行业,各个领域都可以从事。举个栗子,你去餐饮行业的话,可以研发点餐平台;你去生活服务类企业,可以研发线上购物小程序等等。
4. 进入IT行业的成本少,回 又快又多
学习IT的成本较少,学习时间较短,而且也很容易上手,对学历要求不是很高。相比于其他行业来说,IT行业整个就是“投资小,回 大”。再就是不断地学习进步,经验越丰富越吃香。
如果你是0基础小白的话,就是之前没有接触过IT,或者说只了解一点皮毛,我建议还是系统地学比较好。因为你前期时间、金钱的投入越大,后期回 率也就越高。
二、软件测试的门槛
①软件测试,作为软件研发流程中的一环,是软件研发质量的重要保证,而随着互联 产业、软件等需求持续增加,这样的人才需求也持续旺盛,因此,有越来越多的人看准这个机会想进入这个行业。一方面,这一行作为信息基础行业,有着相比于其他行业更高的薪酬待遇;另一方面,随着信息技术更多的进入我们的生活,这方面的发展前景也得到了大家的认可。所以,这一切也都不难理解。
②那么,想从事这一行业,都需要做哪些准备呢?在我看来, 首先要了解的就是软件测试的基本概念和思想。软件测试在软件研发流程中处于怎样的过程,软件研发的基本原理,软件测试的基本方法,这些都是需要了解和掌握的。只有清楚了这些,才能很好的认识到软件测试是怎么一回事,才能够更好的参与到软件测试工作中,进而为软件的研发质量保证贡献出自己的一份力量。
③作为软件测试行业的从业人员,我们必须清楚, 软件测试是需要用基本的测试方法来保障软件的质量的。还有很多面试者,谈起测试的基本方法来是头头是道,但真的给了一个需求文档让他去设计测试用例时,就完全不管测试方法中交给我们的东西了,而是天马行空的发散起来。这种理论与实际脱钩的情况,就会让面试官觉得还是没有很好的掌握测试方法,经过他测试的软件产品的质量是不可控的,因此也会存在很大的质量风险。
④只有将软件测试的基本概念、方法进行很好的应用到日常工作中,只有能将我们在候选人简历中经常看到的「熟练掌握软件测试方法」转换成真正的掌握,那在我看来才是迈过了从事软件测试行业最基本的门槛。而要达到这一点,日常工作中积极的思考测试方法与被测试软件的测试用例的对照关系,在日常使用软件的过程中培养测试用例设计的意识,都能够很好的提高自己在这方面的能力。
三、测试的基本技能
①在迈过软件测试的门槛后,接下来就是要掌握做测试的基本技能了。这个技能,包括对被测试软件的进一步了解和掌握,对测试工作中使用的测试工具的熟悉。
②在面试中,我们看到候选人的简历中提到自己测试项目的基本介绍,包括使用的语言、框架,但真正问起来,对这些都没有基本的了解,那在我们看来就是不合适的。还有候选人对自己测试的项目所在平台的一些基本常识的缺乏,在面试中也是很致命的。比如,在面试中我经历过这样的候选人,做的是移动端的 APP 测试,但不清楚 APP 测试的基本特点,需要关注哪些方面,兼容性测试怎么做等,这都是日常测试中很基础的东西,如果都不能很好的讲出来,那就会说很糟糕的。
③在我们日常的软件测试中,首先要关注的就是 被测试软件所在平台的基本特点,是Web 的还是 APP?Web 类的产品有哪些特点,实现的原理是怎样的,测试过程中需要考虑哪些东西,承载 Web 类产品的浏览器是怎样的工作原理,做兼容性测试的时候需要关注哪些方面。APP 类的产品有哪些特点,所在的系统有哪些特点,与终端系统有哪些交互,需要考虑哪些方面的指标等。再此基础上, 再去结合被测试软件的需求和功能特性去进行测试用例的设计,功能特性有哪些,边界值法怎么用,等价类怎么划分,异常场景有哪些,等等。
④另外,我们在很多候选人的简历中看到「熟练使用 XXXX 测试工具」,但真的问起来,这个工具的原理是怎么样的,都有哪些基本操作,可以辅助我们做哪些测试等,他们就不知道了。更有甚者,只是知道点哪个按钮可以产生什么东西,多问一句产生的这些东西是怎么得到的,都包括哪些信息,就不知道了。这些就比较不应该了。这样的「熟练」更多的是对最常规、最基本使用的「重复性熟练」,而非真的对这个测试工具有更深层次的了解和掌握。
⑤在我看来,使用一个测试工具,这个 工具实现的基本原理是怎样的,这个工具能做什么,不能做什么,为什么能做这些,使用过程中能给我们提供哪些数据,我们可以用这些数据做什么,如何辅助我们进行测试,都是我们在拿到一个工具时首先可以去了解的。只有对一个工具有了这些了解,我们才能在日常的测试工作中更好的、更熟练的使用,最大化的辅助我们的测试工作。
四、测试的能力提升
①当我们对基本技能有了一定的掌握后,我们就需要进一步的提升自己的软件测试能力。
②这时候对测试能力的定义和范围就可以进一步的扩大化,当我们测试一个软件时,这个软件更底层的东西就需要我们去开始接触,使用的语言、框架的特点,软件的技术架构等。这些对我们更好的了解被测试软件,发现其中存在的问题,都有很大的帮助。对于较大型的软件,我们还需要了解整个系统的模块划分是怎样的,模块与模块间的调用关系是怎样的,调用过程中是否困难存在异常,这里的用例该如何设计,对错误处理的用例该怎么构造,软件发布上线后,对应的数据是否有上 ,上 的问题反应了怎样的问题,等等,都是我们需要去了解的。
③在测试工具的使用上,也对我们有更高的要求,比如能实现类似功能的同类工具还有哪些,为什么我们要用当前工具,这个工具能得到哪些信息,这些数据是怎么得到的,准确率是多少,误差是否在我们可接受范围内,我们是否需要再此基础上去做优化,如此等等。
④另外,随着我们对软件测试的要求越来越高,测试的粒度越来越细,一些基本的测试、常规的工具不能满足时,我们是否能够开发出一些脚本、工具来满足我们的测试需要,我们是否能够持续用工具来解决测试中的问题,用工具实现测试效率的提升,测试深度的加强,等等。
五、测试的职业发展
①最后,简单谈下软件测试这个行业的职业发展。软件测试作为一个技术岗,不断的提升自己的技术能力是最核心的发展要素。在这个大前提的指引下,不断的沉淀自己技术领域的积累,扩充自己在技术解决测试问题上的知识面和能力,是关键。
②从这个意义上讲, 软件测试工程师的发展会从解决独立需求测试的初级工程师,向能独立负责较大系统测试的中级工程师,到能完成测试体系的建设的高级工程师一步步实现前进,在这个过程中,自己的技术能力也从对被测软件的基本实现,到掌握系统架构,针对系统架构进行完整测试,从用小工具实现测试效率的改进,到用测试平台、测试体系实现一整套测试架构的实现。
③测试管理也是软件测试工程师发展的一个选项, 从独立跟进需求测试,到带领小团队共同完成某个项目的测试,进而到带领更大的测试团队完成包括功能测试、工具建设等多领域的提升。
六、测试老鸟给的职场建议
在软件测试行业呆久了之后,有些职场心得想分享给大家。希望各位老铁可以快速成长!!
1. 打铁还需自身硬
只要自己有过硬的本事,无论在哪里都会风生水起。毕竟,金子在哪里都会发光的。
2. 沟通能力很重要
沟通能力在一个团队中,是很重要的啊。再进一步说,拥有良好的人际关系就等于有良好的工作氛围,每天待也多快乐啊,工作都提起劲了!!
3. 领悟能力也很重要
谁会一直带一个“重复说了很多遍也不会的人”?毕竟大家都喜欢举一反三的人呐,领悟能力强可以快速融入团队,大到可以让整个团队的业务逻辑、运作方式都顺利进行,这才是最重要的。
七、总结
如果想成为一个优质的软件测试工程师,那么你需要付出的努力又要比别人多,系统地学好过自学,效率高几倍,有时候转换一下思维也挺好。加油吧少年!趁现在还年轻,努力让自己变得更好更优秀,朝着更高更远的地方走去。年入百万的大门在向你们敞开!
总之,软件测试是一个需要不断理解行业,不断提升自我,不断思考测试对于项目团队意义的工作。只有不断的前进,自己的职业生涯才会有更好的前途和更大的发展。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!