转行软件测试两年了,这两年来,从刚开始对测试认识的朦朦胧胧,现在思路也逐渐清晰了,也明确了自己的发展方向。虽然对那些测试理论和测试工具以及测试技术有了一些加强,但是自我感觉还是不够深入。
我一直希望能真正融入到测试的队列中去,让自己每年对测试的理解和技术更深入一层,成为一个专业的测试人员。这几天整理了一下思路,回顾了这两年来做测试的点滴想法。
一、软件测试人员应该居安思危
身为测试人员,虽然我们平常的工作大部分都比较安逸。但是千万不能温水煮青蛙。应该自强不息,不断学习,提高自己的测试技术。因为测试本来门槛就稍低,如果懈怠,随时都有可能被取代。重点就是深入学习测试技术,然后将技术应用到现有的项目中。
二、测试人员应该比开发人员更熟悉业务需求
测试人员的水平主要体现在测试用例的设计上。要设计出全面,覆盖广的测试用例,需要测试人员对自己所测试的项目的业务需求非常熟悉,甚至要比开发人员还要熟悉。
如果是测试银行系统,通信行业,或者ERP软件。这些业务知识非常有用的,学习起来比较有激情。
要做到精通业务需求谈何容易。
- 要熟读功能需求文档, 任何有疑问的地方都要去和PM确认。
- 把自己当成最终用户, 经常使用自己所测试的软件。模拟用户的行为。
- 熟记软件的每个功能。
三、学会如何跟开发人员相处
测试人员必须跟开发人员密切合作, 所以跟开发人员搞好关系是相当重要的。
1. 和开发人员成为朋友。
熟悉了干啥都方便
2. 不要打扰开发人员。
看到开发在聚精会神写代码的时候,千万不要去打扰人家。写代码需要集中精力,如果被打扰,就会中断思考。
3. 集中问问题。
把需要问的问题都总结起来, 集中起来问开发,这样能节省大量的时间。
4. 写好Bug,不被开发人员烦。
如果开发人员看到一个Bug 描述不清楚,还无法重现,他肯定会骂测试人员。所以测试人员一定要写好Bug,描述精确,简洁,没有歧义,详细简洁的重现步骤,加截图。
四、提升文档的编写能力
测试人员写文档的地方比较多,平时测试用例、测试计划、测试报告以及用户手册等等都体现着测试人员文档编写能力的重要性,如果后期往TestLeader发展,还要非常擅长汇总测试报告,能够将完整,清晰,漂亮的测试报告发给各个组,让公司所有的人都能清晰的看到测试组的工作情况。
五、实行“一对多”的模式
“一对多”的模式是指:一个人可以同时测试多个项目,一个项目由多个人测试。因为每个人的见解和操作方式不同,所以发现问题的可能也不大一样,更有利于找出不易发现的bug,一个测试工程师测久了自己的项目,容易形成眼盲。会对一些Bug熟视无睹。
六、建立一套完善的测试流程
测试流程已经大同小异了,但是真正按照流程来做的还是很少。如果条件允许的情况,还是应该尽量去按照流程去走,先去做单元测试、然后集成测试,而不是上来就直接进行系统测试。
七、测试人员应该深入学习
初入测试,可能还提留在探索的阶段,不清楚要学习哪些和测试有关的技术,这时就需要我们主动去发现,通过书本和网上去看别人都是怎么做,汲取可用的经验,避免少走弯路。测试人员要提升的技术包含方方面面。
例如:性能测试(可参考的工具loadrunner、JMeter)、自动化测试(可参考的工具Pytest、RobotFramework)、脚本语言(Python)、数据库(SQLServer、Oracle)、操作平台(windows、Linux)、Web测试(Selenium)等等,还有很多很多,这么多的技术,学习只是一方面,更重要的是要根据我们现有的项目和测试环境,去分析什么才是最适合的,这样才可能真正将所学应用到项目上来。
今天,就给大家分享我整理的这份软件测试工程师发展方向知识架构体系图,希望可以给你带来灵感和方向。
7.1 Linux必备知识
Linux作为现在最流行的软件环境系统,一定需要掌握,目前的招聘要求都需要有Linux能力。
7.2 Shell脚本
掌握shell脚本,包括shell基础与应用、shell逻辑控制、shell逻辑函数等。
7.3 互联网程序原理
自动化必由之路:前端开发基础知识以及互联网网络必备知识。
7.4 Mysql数据库
软件测试工程师必备Mysql数据库知识,不仅仅停留在基本的“增删改查”。
7.5 抓包工具
Fiddler、Wireshark、Sniffer、Tcpdump各种抓包工具适用于各种项目,总有一款适合你。
7.6 接口测试工具
接口测试神器,你绕不开的强大工具:Jmeter。小巧灵活:Postman。
7.7 Web自动化测试Java&Python
了解自动化的目的,熟练掌握testng&unittest自动化框架,以及断言与日志处理。
7.8 接口与手机自动化
专业接口调用、测试解决方案。组建完整的web和接口自动化框架,Appium整体使用。
7.9 敏捷测试&TestOps构建
揭开TestOps的神秘面纱,持续集成Jenkins框架烂熟于心。
7.10 性能测试&安全测试
软件测试的彼岸:性能测试和安全测试,选对方向,努力爬坑吧!
相信你如果掌握了上面所有的知识技能,并且能够灵活的运用的话,月薪20k并不会是什么问题。这个过程会让你痛不欲生,但只要你熬过去了。以后的生活就轻松很多。我也是走过这样一段路,才能获得更多高薪职位的机会,付出终有回报,也算是对自我能力的一种认可吧,真正的证明了自己的价值。