最近发现一些测试岗位的薪资水平很高,然而与此造成鲜明对比的是,另外一些测试岗位的回报倒是少得可怜,两级分化特别严重。面试
我一直有这样一个观点,除去各类软技能因素,你会的越多拿的就越多。sql
那么当前测试同窗应该具有哪些技能呢?我想大概应该有下面一些。app
沟通能力我认为分为2种,一种是表达本身,另外一种是聆听别人。性能
表达本身的意思就是能让其余人知道你想作什么,在作什么,有什么困难,须要什么帮助;聆听别人就是你听得懂对方在作什么,要作什么,有什么困难之类。单元测试
不少测试同窗在表达本身方面能力很强,可是聆听别人方面却差强人意。常常沟通以后彻底不知道开发或者项目要作什么。这应该是因为信息不对称形成的,开发和项目方面的事情你们不是很清楚,因此沟通的实话每每貌合神离,只能报以尴尬而不失礼貌的微笑。测试
这里特指阅读文档的能力。优化
文档有不少种,咱们最应该读懂的是需求文档。网站
需求文档里可能有不少字,这时候咱们须要一边读一边思考,哪些地方是合理的,哪些地方又是须要推敲的,好比根据手机壳自动变换软件主题颜色之类的须要,仍是要多多讨论一下才比较好。设计
需求文档里面极可能就一句话,好比我要实现一个跟淘宝一摸同样的网站,这时候上文描述的沟通能力就有用武之地了。咱们须要把需求一点一点的挖出来,丰富和细化,最终还原为真实需求。我的经验看来,一句话的需求每每是在表达美好的愿望,只是冰山一角,实际要作的事情每每至关的繁复。开发
用例设计的方法你们应该耳熟能详了,起码每次面试以前都会背一遍。可是会了那么多方法,并不必定表明你就能编写合理有效的用例。
其实我一直认为,咱们所推崇的用例设计方式不少时候是很微观的,但咱们设计的测试用例在大多数时候倒是宏观的,二者之间彷佛并不能使人信服的融会贯通。
好比边界值法,在单元测试里边界值是很容易分类(等价类)和枚举的,可是在设计一个真正的手工测试用例的时候,咱们每每很难作这种枚举,咱们可能会有一个输入范围及其庞大的无效类,叫作异常状况。如何在异常状况中再次细分,选取有表明的性的输入或操做进行测试,每每至关有挑战,这就须要真正的理解需求,理解被测系统。
因此不少时候,这种设计用例识别盲点的能力最终仍是转化为,你对系统熟不熟,对业务熟不熟,知不知道用户在想些什么。
由于衡量测试输出的指标不是不少,因此有些时候咱们要输出一些文档来表示咱们确实在努力工做。好比
这些其实有很大的优化空间,毕竟在项目紧张的时候测试报告也就是一个结论一封邮件的事情。
测试重复性的工做不少,有一些重复性高的事情是能够用写代码的方式去快速搞定的。好比能够用写一些脚本逻辑加sql的方式快速生成一些测试数据之类的。有了代码能力以后,想象空间就会变大相对大一些。
手工执行用例也是一种能力,并非测试用例写的好换谁执行都同样的。可是自动执行用例的能力也是当前的测试人员所须要掌握的。
自动化的用例执行能够节约成本,提高执行效率,加速回归测试,不过须要找到投入和产出的平衡点。
把一些回归用例用代码的方式实现并维护其实蛮有挑战的,毕竟学会写代码是须要一个过程的。
掌握一项专项测试能力,好比性能,app之类的,毕竟说不许何时项目就要求你这样作,能顶上去才有更好的发展空间。
不知道你们以为还有哪些能力是必备的,欢迎留言讨论。