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

 

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

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

一个个讲解。


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

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

 

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

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

闭目想想....

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

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

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

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

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

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

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

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

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

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

非也。

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

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

图片

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

  • 通过学习不断的提升自己

  • 夯实基本功多思考总结,在实践中反复验证改进


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

1、问题引入

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

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

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

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

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

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

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

  • 需求分析评审

  • 测试计划与方案制定

  • 测试用例编写与评审

  • 测试用例执行

  • 缺陷跟踪

  • 测试报告

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

  • 上述过程中,需求分析评审更多的需要对于产品需求达成一致理解;

  • 确定好需求范围后,按照项目计划制定测试实施计划及方案,描述做什么,谁来做,怎么做;

  • 侧重点是用例的设计编写,全面覆盖需要并验证最终的产品是否满足需求,是测试工作的核心;

  • 测试用例执行过程,需要等待开发达到提测标准,冒烟测试通过后进行测试用例执行;

  • 执行过程中产生bug,需要按照缺陷跟踪流程来跟踪验证bug,知道问题被修复完毕;

  • 当整个项目测试完毕后,进行测试报告的编写及项目的总结。

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

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

图片

  • 计算机基本技能。例如:软件的基本管理和办公软件的基本使用等

  • 软件测试理论。例如:软件测试流程、测试用例、缺陷报告等

  • 测试专业技能。例如:计算机网络、操作系统、数据库、编程语言等

  • 其他相关能力。例如:和不同角色的人进行沟通解决问题能力,带领团图研发能力等。

详细知识点参见黑马软测试资料分享链接(下方链接已附详细视频+配套软件)

《作为一名软件测试工程师,需要具备哪些能力?1346 赞同 · 185 评论回答》https://www.zhihu.com/question/19752175/answer/1453207343

推荐视频如下:

1)北京校区-《功能测试_6天黑马手工测试2021版》

本视频b站链接:https://www.bilibili.com/video/BV1QM4y137xX
2)北京校区-《测试入门_3天黑马手工测试理论+6天实战完整分享_适合0基础》
本视频b站链接:https://www.bilibili.com/video/BV1at4y1Y7AN
3)上海校区-《移动端App测试_最新2020教学视频》
本视频b站链接:https://www.bilibili.com/video/BV12o4y1k7Kb
4 ) 北京校区-《1天禅道工具使用》  
本视频b站链接:https://www.bilibili.com/video/BV1t541147Zk
5) 北京校区-《1天软件缺陷与JIRA》
本视频b站链接:https://www.bilibili.com/video/BV1DU4y1w7tX
6) 实战视频-《两小时快速入门黑马头条APP功能测试实战》
本视频b站链接:https://www.bilibili.com/video/BV1oQ4y1N7E2
7)实战视频-《实战项目带小白入职7-12k功能测试岗位,仅7小时【史上最快】
本视频b站链接:https://www.bilibili.com/video/BV1kw411o756

那么,如何将视频知识转化为自己的技能呢?

第一种方式,可以直接通过自学方式完成,对于个人自律性要求较高,需要个人投入的时间成功更高。如果确定选择自学,建议可以看看下方文章,少走弯路:

教你“如何巧看黑马测试视频,悄悄成为测试高手?”-黑马程序员技术交流社区bbs.itheima.com/thread-508790-1-1.html

第二种方式,可以参加专业的培训进行系统学习,适合基础比较薄弱的同学,同时系统学习能够比较全面夯实软件测试相关知识内容,对大多数人来说效果会更好。培训必定会涉及到第一个问题,那就是选择培训机构。如何选择培训机构呢?可以看下这个链接(1500+人点赞),一定会让你豁然开朗,不再迷茫:

《这么多的软件测试培训机构,哪个好?1760 赞同 · 295 评论回答》https://www.zhihu.com/question/21471129/answer/1501002082


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

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

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

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

图片

根据上述原型图:

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

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

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

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

  • - 软件测试技能

  • - 财务相关业务知识

  • - 生活常识

如果需要项目实践,这里推荐一篇文章,里面涵盖了如何找项目,如何选项目,如何懂项目,如何写项目,一定会对提升你的实战经验有效。

从软件测试到测试开发全套视频+文档+项目+简历模板+面试宝典

需要的小伙伴可以点击小编主页

,验证消息填写000即可获取喔

 一、Python编程入门到精通

二、接口自动化项目实战

三、Web自动化项目实战

四、App自动化项目实战

五、一线大厂简历

六、测试开发DevOps体系

七、常用自动化测试工具

八、JMeter性能测试

九, 银行业务测试

十,大数据测试和业务分析

 

 十一:项目实战

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/176052.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

奇富科技引领大数据调度革命:高效、稳定、实时诊断

日前,在世界最大的开源基金会 Apache旗下最为活跃的项目之一DolphinScheduler组织的分享活动上,奇富科技的数据平台专家刘坤元应邀为国内外技术工作者献上一场题为《Apache DolphinScheduler在奇富科技的优化实践》的精彩分享,为大数据任务调…

C++进阶语法——智能指针【学习笔记(五)】

文章目录 1、智能指针简介1.1 原始指针(raw pointer)的⼀些问题1.2 智能指针(smart pointers) 2、智能指针(smart pointers)——unique_ptr2.1 unique_ptr 的声明2.2 unique_ptr 的函数2.3 ⾃定义类型使⽤ …

Go-Python-Java-C-LeetCode高分解法-第十二周合集

前言 本题解Go语言部分基于 LeetCode-Go 其他部分基于本人实践学习 个人题解GitHub连接:LeetCode-Go-Python-Java-C 欢迎订阅CSDN专栏,每日一题,和博主一起进步 LeetCode专栏 我搜集到了50道精选题,适合速成概览大部分常用算法 突…

比较Excel中的两列目录编号是否一致

使用java代码比较excel中两列是否有包含关系,若有包含关系,核对编号是否一致。 excel数据样例如下: package com.itownet.hg;import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFWorkbook;import j…

C++设计模式_21_Iterator 迭代器(理解;面向对象的迭代器已过时;C++中使用泛型编程的方式实现)

Iterator 迭代器也是属于“数据结构”模式。GoF中面向对象的迭代器已经过时,C中目前使用泛型编程的方式实现,其他语言还在使用面向对象的迭代器。 文章目录 1. 动机(Motivation)2. 模式定义3. Iterator 迭代器代码分析4. 面向对象的迭代器与泛型编程实现…

基于MFC的串口通信(Mscomm)

1、串口通信的概述: 串口是一种重要的通信资源,例如鼠标口、USB接口都是串口。串行端口是CPU和串行设备间的编码转换器。当数据从CPU经过端口发送出去的时候,字节数据会被转为串行的位,在接收数据时,串行的位被转换为…

用Visual Studio(VS)开发UNIX/Linux项目

目录 FTP是免不了的 正确设置头文件 组织项目结构 创建何种项目类型 FTP自动上传 大部分具有Windows开发经验的程序员会比较喜欢使用Visual Studio,而大部分Unix/Linux程序员则喜欢使用UltraEdit直接在主机上写代码。 为什么直接在主机上写代码呢,因…

AIGC - Qwen大模型:Qwen-7B模型推理部署

硬件环境 作为AIGC方面的小白来说,我抱着非常天真的想法,想让它在我的工作笔记本上用i5的CPU去跑,至于为什么这么想,当然是因为我没有GPU,身边也没有其他的带显卡电脑 恰好,在腾讯云看到了GN7的显示优惠活…

内存DMA及设备内存控制详解

序言 对于PCIe 设备(PCIe Endpoint)来说,其和CPU CORE、DRAM 的交互,主要涉及两种类型的内存访问: 设备内存访问:PCIe 设备的 Device Memory(设备内存)的访问,例如CPU …

③ 软件工程CMM、CMMI模型【软考中级-软件设计师 考点】

个人简介:Java领域新星创作者;阿里云技术博主、星级博主、专家博主;正在Java学习的路上摸爬滚打,记录学习的过程~ 个人主页:.29.的博客 学习社区:进去逛一逛~ ③ 软件工程CMM、CMMI模型【软考中级-软件设计…

flink 反压原理

背景 在flink中由于数据倾斜或者数据处理速率的不匹配,很容易引起反压,本文就看一下flink反压的原理 flink反压原理 flink全流程pineline的反压实现其实依赖于TaskManager之间的反压和TaskManager内部的反压来实现 1.TaskManager之间的反压 2.Task…

视频下载软件 Downie4 mac中文介绍

Downie mac是一款Mac平台上非常实用的视频下载工具。它支持下载各种视频网站上的视频,并且具有快速、稳定、易于使用的特点。 Downie支持下载各种视频网站上的视频,包括YouTube、Vimeo、Netflix、Hulu、Amazon等等。它具有快速、稳定的下载速度&#xff…

Python---判定表法(功能测试)

能对多条件依赖关系进行设计测试点---判定表法 等价类、边界值分析法主要关注单个输入类条件的测试 定义:是一种以表格形式表达多条件逻辑判断的工具。 条件桩: 列出问题中的所有条件,列出条件的次序无关紧要动作桩: 列出问题中可能采取的操作,操作的…

python基于VGG19实现图像风格迁移

目录 1、原理 2、代码实现 1、原理 图像风格迁移是一种将一张图片的内容与另一张图片的风格进行合成的技术。 风格(style)是指图像中不同空间尺度的纹理、颜色和视觉图案,内容(content)是指图像的高级宏观结构。 实…

mac 安装homebrew ,golang

mac 安装homebrew ,golang 安装homebrew安装golang选择 apple arm 版本安装配置环境变量 安装homebrew /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"回车执行指令后,根据提示操作。具体包括以下提示操作&am…

每日一练 | 网络工程师软考真题Day46

阅读以下说明,答复以下【问题1】至【问题6】 【说明】 某公司总部效劳器1的操作系统为Windows Server 2003,需安装虚拟专用网〔VPN〕效劳,通过Internet与子公司实现平安通信,其网络拓扑结构和相关参数如图2-1所示。 【问题1】在Wi…

sql-50练习题16-20

sql-50练习题16-20 前言数据库表结构介绍学生表课程表成绩表教师表 1-6 检索"01"课程分数小于60,按分数降序排列的学生信息1-7 按平均成绩从高到低显示所有学生的所有课程的成绩以及平均成绩1-8 查询各科成绩最高分、最低分和平均分:以如下形式…

c++-set和map

文章目录 前言一、set容器1、set容器介绍2、set的使用2.1 set的构造函数和迭代器2.2 set的容量2.3 set修改操作 3、multiset容器3.1 multiset容器介绍3.2 multiset容器使用 二、map容器1、map容器介绍2、map容器使用2.1 map的构造函数与迭代器2.2 map中元素的修改2.3 map的容量…

Java修仙传之Flink篇

大道三千:最近我修Flink 目前个人理解: 处理有界,无界流的工具 FLINK: FLINK定义: Flink特点 Flink分层API 流的定义 有界数据流(批处理): 有界流:数据结束了,程序也…

正则表达式包含数字和字符匹配

至少6位。 pattern : (?.[0-9])(?.[A-Za-z])[0-9A-Za-z]{6,} 正则表达式中的“?”是一个正向预查字符,它的意思是匹配前一个字符出现的最少一次。具体来说,当一个匹配出现时,它会检查前一个字符是否符合要求,如果符合&#xf…