成为一个优秀的测试工程师需要具备哪些知识和经验?

看到这个题目,头脑中马上就拆分出了3个小问题:

1、什么是优秀的测试工程师?
2、优秀测试工程师需要哪些知识?
3、优秀测试工程师需要哪些经验?

一个个讲解。

成为一个优秀的测试工程师需要具备哪些知识和经验?_第1张图片


一、什么才是一名优秀的测试工程师呢?

什么才是一名优秀的测试工程师?我们可以通过测试日常的工作场景来发掘。

场景1:在一个项目中,需求发生变更了,如何处理?  
场景2:在项目上线紧张时刻,系统出现异常,如何处理? 
场景3:正在经历的项目有一个未知领域内的工作,需要攻克一些技术难关,发现没有带头人去做如何处理? 
场景4:后续基本稳定,需要迭代过程中如何通过自动化技术手段提高测试效率,能否带领团队从整体把控整个产品质量? 

软件测试是一个综合性很强的岗位,不仅仅需要具备一定的技术能力,还需具备团队合作及解决问题能力。那么优秀的测试人员针对上述测试场景会如何处理呢?

闭目想想....

接下来我们再来看看优秀测试人员的做法:

场景1:在一个项目中,需求发生变更了,如何处理?

普通测试工程师:省略n字
优秀测试工程师:变更流程及跨部门的沟通

场景2:在项目上线紧张时刻,系统出现异常,如何处理?

普通测试工程师:自己脑补
优秀测试工程师:有风险预防措施及应对方案

场景3:正在经历的项目有一个未知领域内的工作,需要攻克一些技术难关,发现没有带头人去做如何处理?

普通测试工程师:省略n字,自己脑补
优秀测试工程师:能确定技术的成熟度及方案的可行性

场景4:后续基本稳定,需要迭代过程中如何通过自动化技术手段提高测试效率,能否带领团队从整体把控整个产品质量?

普通测试工程师:省略n字,自己继续脑补
优秀测试工程师:具备高效完成工作的进阶技能


那么这样就算很优秀了么?

非也。

上面的场景属于先出现问题后解决问题。要达到优秀的测试工程师标准,

1)就需让测试工作前移,提前发现问题。
2)甚至要避免出现各种问题,以全面保障整个软件质量过程的管控。
3)能够带动团队,具备把控整理软件质量的能力。

成为一个优秀的测试工程师需要具备哪些知识和经验?_第2张图片

这就需要测试人员锤炼如下本领:

  • 通过学习不断的提升自己
  • 夯实基本功多思考总结,在实践中反复验证改进


二、优秀测试工程师需要学习哪些知识,来不断提高自己?

1、问题引入

例如:
给你一个完整的xx项目,有web页面也有app甚至还有小程序,项目中给你产品需求说明书,那么测试要如何开展测试工作呢?

要能够开展测试工作,我们需要考虑3个方面:

1)得清楚测试的目的是啥?
2)按照什么流程步骤完成测试活动?
3)能否交付用户使用?

对于初级测试工程师而言,更多的是按部就班,按照领导的安排进行测试执行;

优秀的测试工程师需要从测试设计出发,以整体产品业务为主线,关注整个产品的质量以及稳定性等方面的测试点设计,同时还需要对已经设计的测试点转化为用例并执行,过程中还存在流程的优化,过程的改进,风险的把控等。

2、初级测试工程师提升到优秀测试工程师,需具备什么技能?

①熟悉必备的项目测试流程,能够轻松指导在项目中如何开展测试工作,流程如下:

  • 需求分析评审
  • 测试计划与方案制定
  • 测试用例编写与评审
  • 测试用例执行
  • 缺陷跟踪
  • 测试报告

②按照流程实施的过程需要进一步跟进确认:

  • 上述过程中,需求分析评审更多的需要对于产品需求达成一致理解;
  • 确定好需求范围后,按照项目计划制定测试实施计划及方案,描述做什么,谁来做,怎么做;
  • 侧重点是用例的设计编写,全面覆盖需要并验证最终的产品是否满足需求,是测试工作的核心;
  • 测试用例执行过程,需要等待开发达到提测标准,冒烟测试通过后进行测试用例执行;
  • 执行过程中产生bug,需要按照缺陷跟踪流程来跟踪验证bug,知道问题被修复完毕;
  • 当整个项目测试完毕后,进行测试报告的编写及项目的总结。

要完成上述整体的过程,需要知识技能的储备、时间管理把控、问题的分析定位及沟通解决等一系列的支撑。

3、如何才能获取优秀测试工程师具备的这些技能呢?

成为一个优秀的测试工程师需要具备哪些知识和经验?_第3张图片

  • 计算机基本技能。例如:软件的基本管理和办公软件的基本使用等
  • 软件测试理论。例如:软件测试流程、测试用例、缺陷报告等
  • 测试专业技能。例如:计算机网络、操作系统、数据库、编程语言等
  • 其他相关能力。例如:和不同角色的人进行沟通解决问题能力,带领团图研发能力等。

三、优秀测试工程师需要哪些经验,来提高自己?

在实施过程中必然会碰到在理论知识中没有的问题,那这就需要经验。经验的获取源于不断的项目实战。

软件测试经验的获取需要大量的项目实战经验积累。所以参与具有一些实战意义的课程系统学习,无疑是一个积累经验的快速通道。

例如:一个手机银行APP项目,只有产品需求说明书或UI原型图,那么测试人员是如何进行一步步实施获取经验呢?

成为一个优秀的测试工程师需要具备哪些知识和经验?_第4张图片

根据上述原型图:

首先读懂需求文档或原型图要表达的意思,比如上述UI描述的核心就是“转账功能”,对于转账来说,根据常识经验,需要验证转出账号的余额,转入账号的卡号姓名对应正确,转账的密码验证码,以及到账时间的正确性;

其次,需要考虑转账金额的正确性,如果转账过程中出现问题,能否回滚,金额原路退回;最后,还可以考虑能否多次转账,以及转账后记录是否可循。

把握住了这些关键测试点,那么就能验证到转账功能的核心,对于测试者来说就不会出现太大问题。而这些经验来源更多的是需要测试人员“站在用户使用角度”去思考,再结合产品需求文档就更加完善。

这就需要具备一定的理论知识,才能更好的完成实践:

  • - 软件测试技能
  • - 财务相关业务知识
  • - 生活常识

若你只是刚入门测试人员,想让自己快速成长为优秀测试工程师,在此特意为各位同学准备了一份13G的超实用干货学习资源,涉及的内容非常全面,涵盖功能测试(含测试流程)、Python编程语言,接口测试、UI自动化测试(含测试流程)......(满足你对测试知识的需求)

包括软件学习路线图、16个突击实战项目(满足你对测试经验的需求),80余个软件测试用软件,37份测试文档,70个软件测试相关问题,40篇测试经验级文章,上千份测试真题分享,还有2023软件测试面试宝典,还有软件测试求职的各类精选简历,希望对大家有所帮助…..

你可能感兴趣的:(Java,软件测试,程序员,压力测试)