居安思危
因为测试本来门槛稍低,随时都有可能被取代。所以要不断地深入学习测试技术,然后将技术应用到现有的项目中,只有通过这种不断学习实践的方式才能提高我们自身的核心竞争力,才能在越来越卷的行业大浪潮中屹立不倒。
懂业务
- 测试人员的水平主要体现在测试用例的设计上。要设计出全面,覆盖广的测试用例,需要测试人员对自己所测试的项目的业务需求非常熟悉,甚至要比开发人员还要熟悉。
- 如果是测试银行系统,大数据系统、云产品系统等这些业务知识非常多,很难掌握。
- 如何做到精通业务需求
- 要熟读功能需求文档, 任何有疑问的地方都要去和PM确认
- 把自己当成最终用户, 经常使用自己所测试的软件
- 模拟用户的行为,熟记软件的每个功能
知人心
测试人员必须跟开发人员密切合作, 所以跟开发人员搞好关系是相当重要的。那如何与开发人员搞好关系呢?
- 和开发人员成为朋友,熟悉了干啥都方便
- 不要打扰开发人员。看到开发在聚精会神写代码的时候,千万不要去打扰人家。写代码需要集中精力,如果被打扰,会打乱别人的思路
- 集中问问题。把需要问的问题都总结起来, 集中起来问开发,这样能节省大量的时间。
- 写好Bug,描述精确,简洁,没有歧义,详细简洁的重现步骤,加截图
谋发展
- 测试人员写文档的地方比较多,平时测试用例、测试计划、测试报告以及用户手册等等都体现着测试人员文档编写能力的重要性。
- 如果后期往TestLeader发展,还要非常擅长汇总测试报告,能够将完整,清晰,漂亮的测试报告发给各个组,让公司所有的人都能清晰的看到测试组的工作情况。
讲策略
-
实行“一对多”的模式
- “一对多”的模式是指:一个人可以同时测试多个项目,一个项目由多个人测试
- 因为每个人的见解和操作方式不同,所以发现问题的可能也不大一样,更有利于找出不易发现的bug
- 一个测试工程师测久了自己的项目,容易形成眼盲,会对一些Bug熟视无睹
-
建立一套完善的测试流程
- 测试流程已经大同小异了,但是真正按照流程来做的还是很少。
- 如果条件允许的情况,还是应该尽量去按照流程去走,先去做单元测试、然后集成测试,而不是上来就直接进行系统测试。(我们这边的管理流程很多,测试流程就很少,很奇怪)
学以致用
初入测试,可能还停留在探索的阶段,不清楚要学习哪些和测试有关的技术,这时就需要我们主动去发现学习,通过书本和网上看别人怎么做或者从比较优秀的同事身上汲取可用的经验,避免少走弯路。
- 测试人员要提升的技术包含方方面面。例如:性能测试(可参考的工具loadrunner、JMeter)、自动化测试(可参考的工具Pytest、RobotFramework)、脚本语言(Python)、数据库(SQLServer、Oracle、Mysql)、Web测试(Selenium)等等,还有很多很多,这么多的技术,学习只是一方面,更重要的是要根据我们现有的项目和测试环境,去分析什么才是最适合的,这样才可能真正将所学应用到项目上来。
学习路线
结合其他大佬分享的软件测试工程师发展方向知识架构体系图和自己多年工作的实践总结的测试技术晋升的学习路线图。
开发语言
- 精通一门开发语言,比如python、java、shell、sql、html等等
- 若是学不进,其实下面已经没有再看的必要啦,浪费时间
- 开发语言的熟练掌握是提升测试效率及测试质量的基础,否则就是苦力地干活。
Linux
- Linux作为现在最流行的软件环境系统,是必备知识
- 云平台和大数据测试离开linux命令基本上是寸步难行
- linux 常用命令
- Shell 脚本读写
互联网程序原理
- 自动化必由之路
- 抓包工具:Fiddler、Wireshark、Sniffer、Tcpdump、Charles
- 前端开发基础知识以及互联网网络必备知识 (selenium等UI自动化)
- HTTP协议数据模型 (接口自动化)
数据库
性能测试&安全测试
- 软件测试的彼岸:性能测试和安全测试,选对方向,努力爬坑吧
- 性能测试学习路线
- 安全测试学习路线
–持续更新。。。
|