背景介绍
相比开发以后的职业生涯;我更看好软件测试的未来。
其次具有开发经验。对软件测试会有相当大的帮助,前面学了测试基础工具后,后期自动化提升会更快。这样才能更好的胜任软件测试工作。
最重要的是测试不是青春饭,和软件开发相比,如果30岁还没有转到管理,或在技术总监或在高级研发等上层职位。那么会越来越弱势,越来越不吃香,压力会很大(技术和心理都会)。
开发人转行测试
软件开发是一种工程,是一种计划,很难不把这种思维方式带入到生活中,但工作可以规划,空闲时间没法规划,规划了的空闲时间就不是空闲时间。
程序员的工作是尽量的做好设计,避免出异常。我已经不由自主的把这种设计 规划 避免出异常的思维方式带入到生活中,看起来调理清晰,但少了许多惊喜。没有惊喜的生活重复乏味,就好像鱼缸里的鱼,假如突然它的记忆不止7秒,它就会意识到自己已经在这个鱼缸里转了一圈,两圈,三圈,多无聊。我就是那只知道了自己重复乏味生活的的鱼, 多无聊!
对于我目前对着电脑,对着电脑,对着电脑的生活,我希望可以work with people,live with people。也就是像一个伟人说的那样,从群众中来,到群众中去。
一个程序打开只需要1秒,一个好的程序分分钟即可上手。
但是了解程序员或开发员的都知道。其实每个程序背后都有一个,夜以继日,辛苦工作的程序猿。
很多从事程序开发的人会在有一定开发经验后会转到测试岗位,其实测试岗位并不轻松,因为测试的结果直接会影响到软件的性能,进而影响到用户的体验。那么,从事开发的朋友如何转测试呢,笔者有下面几点建议。
1、首先,开发转测试感觉听亏的,开发转测试很容易,反之就很难了, 只要会基本的测试所需知识,一般还是能面试上的,做测试没有开发难。
开发的工作确实是比较累的,很多的公司都是时常加班的,没点能力和体力是不行的。但是已经做技术了,尤其是如果水平还不差,放弃是很可惜的。
2、由于专职测试人员并不参与产品的代码编写,所以给人一种非生产劳动力的感觉,而且大多企业都是用一些编码能力较弱的人去做测试。即便在很多外企中,对测试相对国内会重视一些,对测试人员素质要求也较高,对测试人员培训也较重视,但是并不代表测试人员地位就高,一样是会有开发人员看不起测试的情况。
3、如果要做一名让开发人员佩服的测试人员,
如何转行测试
人生当自勉,学习需坚持。从这一刻开始,我依旧是我,只是心境再不同。不论今后的路如何,我都会在心底默默鼓励自己,坚持不懈,等待那一场破茧的美丽。
1)编程语言
至少要掌握一门语言,不管是简单的php,java,还是C++也好,或者其他的脚本语言python,perl还是shell也好,至少用一种语言真正的做过一些事情,而且能拿来就用。
2)数据库
至少要掌握一种数据库的DBA,对SQL的操作要熟悉,至少能熟练的运用JOIN进行查询,知道基本的HAVING的用法,如果能写存储过程,并且能优化存储过程那当然更好了,测试人员离不开数据库的管理和数据库的操作。
3)操作系统
作为测试人员,各种操作系统应该很熟悉,系统安装,配置,管理,一个都不能少,对于Linux,至少要对一种系统做过系统管理,熟悉常用的命令行操作,具体要会哪些,建议google一下,用Linux的时候,尽量能用命令行,就不要去点鼠标,因为它不是windows,要改变这样的习惯。能在Linux下能安装和配置软件,最好建议大家自己下载source code,亲自编译,了解make file的原理。
4)扎实的软件测试理论
这是做为测试人员最基本的,不要连开发人员都知道的一些测试方法,测试人员竟然没听过,很多测试人员觉得理论知识都看过,以为自己就了解了,其实做过一段时间之后,再回头去看理论,会有更多的收获,工作多年之后再看测试方面的书籍,发现还是会有不同的收获,理论是实践经验的总结,不能说最好,但是如果说设计测试用例的时候,如果每种方法都有涉及到,肯定会发现用例覆盖率会高,而且容易发现bug。
5)尽量自己分析问题
发现问题了,怎么办?可以找相关的开发人员帮忙分析,但是在发现问题之后,能自己尽量的寻找线索,首先要确定非环境因素,比如检查配置是否全部正确,网络是否有问题等等,然后确定非环境因素后,保护现场,保存记录系统提示信息,如果有日志功能,那自己先根据日志查找一些线索,并把自己检查过的地方和做过的分析信息尽可能多的提供给开发人员,而不是仅仅把错误日志或者错误信息丢给开发人员分析就不管了。
6)多涉猎一些项目之外的知识
不要做一个项目,就两耳不闻窗外事,做测试的就是要涉猎的广,跟开发不同,测试是要能接受任何类型的项目,因为测试是一门方法学,方法学是不受某个产品或者领域限制的,但是如果对其他领域也了解的多,对做测试是有帮助的,前沿技术也要了解一些。
7)掌握一些安全方面的知识
往往系统安全是很重要的,如果能提出一些系统安全方面的漏洞,那别人自然会觉得你考虑的比较全面,至于安全方面需要哪些知识,首先从网络安全入手,了解一些密码学方面的知识,比如了解常用的加密算法原理,比如报文加密传输协议原理,建议看一下hash的方法,这个简单容易理解,还比较容易举一反三。
8)提高沟通能力,懂得尊重开发人员
测试人员要面对的人员很多,客户,项目经理,开发人员,产品经理等,有时候会全部都接触的到,那么沉默就不一定是金,有良好正确的沟通能力,会帮助测试人员提高在其他人心目中的好印象,沟通不是能说就行,要正确的沟通,高效的沟通,就是能用最简洁的语言把事情描述清楚,沟通的好,人缘就会好,就自然会受到大家的欢迎,其他人也愿意合作,千万不要在背后评论开发人员,即使评论,也评论别人的优点有哪些值得学习,懂得尊重开发人员,即使说技术比别人强,懂得尊重别人的人才能被别人尊重。
9)不要自己把自己的地位降低
很多测试人员觉得自己做的测试工作本身就没有技术含量,觉得自己的工作创造的价值少,没有挑战性,其实如果连自己都看不起自己,那如何让别人看得起呢。
软件测试的优势
软件测试是在规定的条件下对程序进行操作,以发现程序错误,衡量软件品质,并对其是否能满足设计要求进行评估的过程。因此一个软件能否成功的被大家知道认同甚至追捧,最终都要经过软件测试工程师的检测。
而且与其他行业竞争激烈情况不同的是,软件测试工程师在我国并没有被大多数人所知道,因此在人才方面仍有大方面的空缺,软件工程师可谓是我国最紧缺的IT 人才。因此,对于很多找不到工作的朋友们来说,软件测试工程师是-个很不错的选择,从事软件测试工程师行业具有很大的优势。下面我们就-起来看看软件测试工程师就业的6大优势。
01、就业竞争小
软件测试工程师目前正在成为IT行业中一个新亮点,不仅其从业人员薪水高、人员需求增加快而广受关注,而该行业未来良好的发展前景也受到肯定。据国家权威部门统计,中国软件人才缺口中,其中30%的人才为软件测试人才。
同一时间中华英才网发布了最新一期的IT职场人气排行榜,IT人才仍是企业需求量最大的人群,作为软件开发流程中的重要一环,软件测试岗位渐渐“浮出水面”,并凭借其庞大的人才需求和广阔的职场发展前景日渐成为IT职场就业的大热门。
02、职业发展方向
由于工作的特殊性,测试人员不但需要对软件的质量进行检测,而且对于软件项目的立项、管理、售前、售后的等领域都要涉及。在这过程中,测试人员不仅提升了专业的软件测试技能,还能接触到各行各业,项目管理、沟通协调、市场需求分析等能力都能得到很好的锻炼,从而为自己的多元化发展奠定了基础。
经过软件测试岗位洗礼的人才往往是行业中的多面手,比其它IT人才具有更强的可塑性,在技术、管理、市场甚至其它非IT领域都能得到良好的发展。
03、无年龄限制,发展空间广
软件测试员的一生如同一名医生的一生,随着职业阅历和临床经验的丰富累积,到一定的年龄他们通过“望闻问切”就能知道毛病出在什么地方。因此,有人说软件测试员和医生是最不需要用“青春”来保证和延续自己职业寿命的职业。
软件测试入门很快,门槛相对不高,关键是对于年龄无限制,更多的是要求从业者有经验和耐心。而且随着项目经验的不断增长和对行业背景和深入了解,经验和资历会带来更高薪资和更高地位,切实感受到越老越“值钱”!
04、高薪没商量
软件测试工程师作为软件质量的把关者,其职能在于保证交付到客户手中的软件可靠好用,运行畅通无阻。从产品定义到产品开发再到产品维护,都离不了软件测试。
但由于软件测试的重要性是近两年才被充分认识到的,高校教育和企业培养都还没有跟上,致使软件测试人才严重供不应求,出现跑步上岗、快速提升的状态,薪资也逐步走高,优秀的软件测试人才年薪可达十万,甚至二、三十万或更高。
05、无性别差别
软件测试岗位要求工作人员具备经验、认真、耐心、细致、责任心、沟通能力强等,所以对性别没有偏好。同时也不需要在小企业积累经验就能获得知名企业的入门通行证,工作压力、强度相对较小。
06、入门门槛低
大中专学历即可,是不是计算机专业都可以。如果是其他有业务背景的专业更有优势,目前大部分测试技术还属于手工测试,手工测试要求入门门槛很低。你只要会写用例,会提缺点就可以了。测试人员需要简单了解业务知识,学习所开发系统的使用,也就是会使用系统就可以了。照着用例执行测试,发现缺点直接提交缺点就可以了。很大的薪酬优势,刚开始工作时月薪很低4000多,但工作半年,对工作流程了解后,再去换工作,五六千没问题。如果做银行业务测试起薪六七千没问题,有一点银行业务知识的再去换工作八千以上没问题,现在银行测试人员缺口很大。尤其是在大的外包公司做好的项目,比如银行项目等待遇和同等工作经历的开发差不多。
目前国内开发与测试的比例是6:1。
所以测试行业人才缺口很大,就业前景很好。基本属于供不应求。工作比较轻松,比起软件开发工程师来说,软件测试工程师的工作就相对轻松多了发展大,测试分为三个阶段:手工测试、自动化测试、性能测试。
这是一个逐步提升的过程。较初工作可能做手工测试,也是目前绝大部分测试人员所从事的工作。自动化测试是测试的发展趋势,而且现在自动化测试人员急缺,且薪资很高。现在较稀缺的是性能测试人员,目前性能测试人员的待遇比同等经历的开发可能还要高,因为现在性能测试人员属于稀缺状态。
(1)手工测试:现在比较普及,大多数测试都还停留在手工测试阶段。
(2)自动化测试:是趋势,但目前用自动化测试的还比较少,需要适当的代码编写工作。做一段手工测试后,积累一定经验,可以慢慢步入自动化测试阶段,如果自动化测试比较熟练,月薪1万没问题,和开发工资差不多。
(3)性能测试:性能测试人员现在稀缺人群,一般能做性能测试,且做得可以的一般月薪都在1.6万以上,比开发要高。无性别要求,软件测试工程师对性别没有特定要求,因此是一相对来说比较适合女性的IT职业。越老越吃香,软件测试工作是对质量的把关,其中包含技术及管理等方面的工作,工作相对稳定,对年龄没有限制,而且随着经验的积累,工龄越长越吃香。希望可以帮助到你!
总结
失败不可怕,可怕的是还没开始你就临阵逃脱。
下面都是小编辛苦整理的资料
如果你不想体验自学时找不到资料,没人解答问题,到最后坚持几天便放弃,那么大家可以进群交流(644956177),里面有各种软件测试资源和技术交流。
加油吧,测试员!任凭风吹雨打,只要一直走下去,不放弃,远方的路终将清晰。路就在脚下,成功就在明天!
未来的你肯定会感谢现在拼命的自己!