其实这问题我都是做了
测试之后才开始慢慢了解的,毕竟大学的时候根本也没学过测试。测试是什么?其实软件理论上看来的我是真的记不住,反正为了面试记几次就差不多了。讲讲我自己的理解吧。
作为一个测试,毕竟还是技术岗位,技术是一定需要的,那么技术需要什么呢?那看你做什么测试了。
如果是一个
功能测试,尤其是做客户端的测试,抓包你得会吧,fiddler,charles都得知道点,当然不止功能,其他测试方向都要会。如果你是想专攻
性能测试的,jmeter这最基本的你得会吧,入门点locust这种阔以了解了解。如果你是想做
自动化测试的,语言你得会吧,python入手也许更好,测试框架你得了解了解,什么testng,appium等等。
还有很多很多,比如说移动端测试对于adb的了解,对于http协议的了解,服务端上对于linux的了解,测试对于
数据库,mysql语句,这都是基础。网络测试怎么做,postman你得懂一点吧。
还有最最基础的,
测试用例,测试流程,bug管理,上线的注意事项等等,这全都得了解。不过没关系,看起来很多,其实实践出真知,慢慢的就会了解了,因为我就是这样...从啥都不会,到能写点自动化,再到现如今也能cover一个项目组。
印象最深的还是刚开始的时候,大促负责的app直接崩了,因为做电商的,老板...大家能想象到应该,一段回不去的岁月,不过很有帮助。
达到上面这些,恭喜你,你应该能成为初级测试了。
中级,高级,专家等等,就要求更不一样了,对于技术上,往后的路线就是架构师吧,以前公司的自动化框架就是测试架构师搞的一个东西,记忆犹新。
沟通
其实我自己是认为沟通是本,测试真的需要沟通,和产品,开发,运营,运维等等的沟通;不沟通没法解决问题,不沟通,到后面就是找谁背锅的过程了...和开发沟通好功能实现,测试点;和产品沟通好需求,上线时间,优先级等等;和运维沟通好服务器的问题;运营的话,主要还是一些运营活动上的沟通,和产品比较类似。
在我的理解中,测试的角色更像是一个推进的作用,因为开发虽然技术好,但是对于大局有时候没那么关心,这个时候就需要测试出面去推动很多东西。引申出我想讲的第三点:
大局观
啥意思呢?还是沟通的向上层级。比如所紧急需求,影响我们的测试时间了,这时候怎么办?直接压回去么?是个办法,但可能会影响产品的策略。
和产品商量是否能延迟上线,不能的话需求优先级是什么,把风险知会到大家,处理这些问题的时候一个好的测试所体现出的就和一般的测试会很有区别了。
上面都是经验之谈,一些基本的素质就更不用讲了,责任心,耐心,因为沟通而需要一点点自信等等,给大家看看我的终极经验吧~