目录
一.了解软件测试
其实在早期是没有软件测试这个行业的,刚开始都是程序员自己进行调试,寻找其中的一系列问题,慢慢的人们发现测试在整个项目研发阶段都是异常重要的,因此呢,就有了软件测试这个岗位,来保证项目可以完整的执行下来。那么,软件测试到底是什么呢?当然最常见的理解就是寻找bug,寻找缺陷,系统的说软件测试就是验证软件产品特性是否满足用户的需求,这个用户就包含了所有的使用软件的人,尽量保证此产品起码得满足一些常用的功能,但是软件测试不意味着你就可以将此软件的所有缺陷都寻找出来,这也是不现实的,这都是需要软件上市后,出现问题了再去不断优化更新的,但这并不意味着软件测试没有用,正如前面说的,软件测试必须保证一些常用的功能以及用户的大部分需求得到满足,如若不然,测试就是失败的。
二.软件测试和软件开发的区别
·技能:
软件开发:需要深入了解一门语言和其框架,懂得其底层是如何工作的,专业度高,技能相对集中
软件测试:软件测试要求的技能范围比较广泛,可能需要懂多门语言,但不要求深度,懂其基本语 法,懂得如何写就可以,以及其他测试(接口测试,自动化测试,性能测试,抓包测试,
APP测试)的工具都需要会使用
·难度:
软件开发:软件开发需要不断的研究,不断的深入学习
软件测试:需要更加细心,发散思维要更强一些需要不断思考,当然也是需要学习的,但不要要求 深度
·发展前景:
软件开发和软件测试就目前的情况来看中大型厂的发展前景和薪资以及工作环境都是基本一致的没有很大的差别,可能对于一些小厂,没有那么重视测试的情况下薪资会低一些
·软件测试和软件开发的调试
目的:
调试:这是程序员本身自己去验证这些代码能否实现他所想让软件实现的功能
测试:测试人员需要验证这个软件是否能够满足用户的需求
角色:
调试:开发人员
测试:测试人员+开发人员(白盒测试)
阶段:
调试:开发阶段
测试:贯穿了整个软件开发过程,每一处都需要测试人员的参与
三.一个优秀的软件测试人员需要具备的素质
能力:
沟通能力:
测试工程师的沟通能力直接影响了事务开展的效率,良好的沟通能力对于一个测试人员是非常重要的
学习能力:
这对于每一个互联网行业的人员而言都是必不可缺的
开发能力:
测试也是需要去寻找bug的
文字描述能力:
需要写一些文档,去描述你所遇到的bug,让开发人员可以更好的解决
测试用例的编写能力:
测试用例是指你需要测什么,怎么测试,因此无论对于什么类型的测试,测试人员都要能够设计出高效的发现缺陷,保证产品质量的优秀的测试用例,这就需要测试人员得有良好的探索性思维,从不同角度找到更多,更好的测试用例
自动化测试能力:
掌握自动化测试技术,可以让测试人员把更多的精力花费在更多类型的测试上去,而不再大量的手动劳动
兴趣:
这其实对于每个行业都是必备的,要不然在工作中会缺少动力
责任感和抗压能力:
测试人员是产品质量的把关者,一个产品的质量好坏,就可以评价一个测试人员是否合格,因此责任感对于测试人员也是需要的保证通过自己测试的产品都是缺陷极少的,而所谓抗压能力,正常的产品都是会不断的发现bug的,因此测试人员肯定多多少少都会受到领导或甲方的压力,所以一定的抗压力也是补课缺少的