软件测试人员的基本功包括哪些?

什么是基本功?百度到的结果是:从事某种工作所必需的基本的知识和技能。

推理1:“基本”二字,意味着基本功必定是来源测试工作的基本流程。
推理2:“必须”二字,就意味者无论你是高级的测试开发,还是初级的手工测试,都必须具备的技能。

知道基本功的概念,"开发技术算不算测试人员基本功?",那肯定不算呀。我是初级测试,我不会自动化,但我用手工依然可以完成测试呀。虽然低效,但也能测试完。这说明开发对于测试而言,并不是必须的,当然也就不属于基本功了。

回到主题:软件测试人员的基本功包括哪些呢?结合上面的分析,接下来该问题的阐述结构如下:

1、一看软件测试基本流程
2、二看初级测试人员的岗位需求
3、明确软件测试的基本功有哪些
4、如何牢固掌握这些基本功

一、软件测试基本流程

图片

上图就是软件测试的基本流程。

1)需求评审
2)计划编写
3)用例设计
4)用例执行
5)缺陷管理
6)测试报告

所有公司软件测试团队工作,基本都是围绕这套流程来开展工作的。

6个环节哪些是基本功,还要结合初级测试的岗位要求得出。

因为,初级测试人员不需要掌握的工作内容,就不叫基本功。

二、再看初级测试人员的岗位需求

图片

从初级功能测试(也叫手工测试)的工作描述上,结合基本测试流程,我们可以拆解下和技能相关工作内容,就是下面4点。

1)编写测试用例
2)完成测试执行
3)提交跟踪缺陷(基本流程里叫缺陷管理)
4)提交测试报告

而基础流程中的“需求评审”、“计划编写”,由测试组长或测试经理负责即可,初级测试工程师不用涉及,所以这2项就不是基本功。

三、明确软件测试的基本功有哪些

但是测试报告,就是“统计下测试结果和缺陷统计”。因为仅仅是统计,所以远称不上技能。最终定下的软件测试人员基本功,就是下面这3项:

1)测试用例
2)测试执行
3)缺陷管理

无论你是做互联网的软件测试,还是做线下的硬件测试,还是做软硬结合的"车载测试”,以上三个都是基本功,具有广泛的通用性。

所以只要你想吃测试这碗饭,这三项基本功必须牢固掌握。

基本功如此重要,如何牢固掌握,接下来我按照1)是什么,2)有什么用,3)怎么做,4)怎么加强 四个维度分别来阐述。

四、如何牢固掌握测试三大基本功-测试用例

1、什么是测试用例?

专业的术语解释为:测试用例,是为特定测试目的设计的测试执行文档。
通俗解释为:针对被测功能,你要测什么,你要通过测试团队规范化的用例形式把他写出来。
测试用例,简单来说,是个人测试思想的文档体现。

图片


测试用例举例

2、测试用例作用?

测试用例有3个作用,每个都非常重要:
a)防止漏侧
b)实施测试的标准
c)测试工作评估

3、怎么做测试用例

首先,要了解测试用例的8大要素:

要素1:用例编号: 项目+模块+编号
要素2:用例标题: 预期结果+操作步骤
要素3:模块/项目: 所属项目或模块
要素4:前置条件: 要执行此条用例,有哪些前置操作
要素5:优先级: 表示用例的重要程度或者影响力P0~p4 (P0最高)
要素6:测试步骤: 描述操作步骤
要素7:测试数据: 操作的数据,没有的话可以为空
要素8:预期结果: 期望达到的结果

接下来,就是要了解常用的测试用例方法啦。

方法1:流程图法
方法2:等价类划分法
方法3:边界值分析
方法4:判定表
方法5:正交法
方法6:错误推测法

常用方法是前面3个,即流程图法,等价类划分法,边界值分析法。

测试用例方法中,最重要的就是了解各个方法的应用场景区别。

a)流程图法的应用场景是“描述用户的使用场景,在业务场景中涉及多功能的组合逻辑”。典型代表是“流程测试”

b)等价类划分法的应用场景是“无法穷举的测试数据 or 测试数据量过大”,典型代表是“页面的输入框测试”。

c)边界值划分法的应用场景是“在等价类的基础上针对有边界范围的测试数据,测试数据一般为数字类或时间类”,典型代表是“有边界范围的输入框类测试”。

d)正交表法的应用场景是“一条用例要覆盖多个输入条件(4个条件以下),且条件之间有依赖(制约)”

e)判定表的应用场景是“有效测试用例太多,但因为条件输入值是中英文字符,无法使用边界值划分法来缩小出测试范围,就使用数学统计类工具'判定表'来合理缩小测试用例条数”。

f)错误推测法的应用场景是“根据经验对可能错误测试”,小白不太适合。

4、怎么牢固掌握测试用例?

测试用例,针对测试用例,我撰写了很多文章,可以交叉看下面这些:

测试用例更多的学习资源,推荐如下:

1)若时间紧张,可快速看下面测试用例相关的高 赞文章:

《测试用例是怎么写的?110 赞同 · 18 评论回答》
https://www.zhihu.com/question/272193009/answer/2962583197

《感觉测试用例好难写怎么办?70 赞同 · 38 评论回答》
https://www.zhihu.com/question/393584042/answer/2957750770

《如何编写测试用例?2500 赞同 · 356 评论回答》
https://www.zhihu.com/question/51558124/answer/1494934653

《有哪些比较好的测试用例管理工具?116 赞同 · 18 评论回答》
https://www.zhihu.com/question/26898212/answer/2940946212

《如何写出高效的软件测试用例?995 赞同 · 90 评论回答》
https://www.zhihu.com/question/39865629/answer/1639536795

《测试工程师都是怎么写测试用例的?222 赞同 · 14 评论回答》
https://www.zhihu.com/question/339206144/answer/2322810917

《在国外,资深的软件测试人员大多是手动测试,他们厉害之处在于测试用例的设计,但在国内,很多测试人员都把自动化测试当成很厉害的资本,为什么?635 赞同 · 69 评论回答》https://www.zhihu.com/question/19721142/answer/1633490943

2)若时间充裕,想系统学习测试用例,可看下方视频:

a)《黑盒测试用例设计》 
本视频b站链接:https://www.bilibili.com/video/BV1YT4y137WA

b)《功能测试_6天黑马手工测试2021版》
本视频b站链接:https://www.bilibili.com/video/BV1Q

c)《移动端App测试_最新2020教学视频》
本视频b站链接:https://www.bilibili.com/video/BV12o4y1k7Kb

d)《测试入门_9天黑马手工测试理论+实战完整分享_适合0基础》 
本视频b站链接:https://www.bilibili.com/video/BV1at4y1Y7AN

e)《白盒测试用例设计》 
本视频b站链接:https://www.bilibili.com/video/BV1cC4y1s7Bx

五、如何牢固掌握测试三大基本功-测试执行分享

1、什么是测试执行

就是严格执行写好的测试用例,在软件上执行,验证是否和预期结果一样,并记录。

图片

红色字体为测试执行后的记录

2、测试执行有什么用?

发现软件中的缺陷(也叫bug)。

3、测试执行怎么做?

step1: 根据测试用例优先级来执行测试用例
step2: 比对实际结果与测试用例中的预期结果是否一致。
一致,则记录通过。不一致,则记录失败。无法执行,则记录阻塞。
step3: 用例执行失败:记录并提交缺陷。
step4:更新测试用例。

为什么测试执行的时候,还可以个更新测试用例呢?原因是测试用例不是一蹴而就,而是反复优化的结果,如果测试人员在执行中发现测试用例遗漏,冗余,无法执行,这进行相应操作即可。

4、怎么牢固掌握测试执行?

如果是人工进行测试执行,严格按照测试用例执行即可。所以测试执行虽然是基本功,但是技术门槛并不高哈,执行时细心即可。

七、如何牢固掌握测试三大基本功-测试执行分享

1、什么是缺陷管理

缺陷,也叫bug。缺陷管理就是提交bug,跟踪bug。

2、缺陷管理有什么用?

1) 软件测试工程师,要通过缺陷管理和开发打交道,修复软件中的BUG;
2) 软件测试工程师,可通过缺陷管理,帮助开发进行缺陷定位。

3、缺陷管理怎么做?

因为缺陷提交,可以借助Jira或禅道等工具。工具很容易掌握,工具不是重点,只是手段。
所以,缺陷管理的核心在于缺陷提交内容的编写(如下图)。

图片

缺陷提交模板

1)缺陷管理的提交要素分为这5种:

a)缺陷编号,b)缺陷状态,c)严重程度,d)优先级 e)bug类型

缺陷编号的掌握很容易的,英文+数字即可。
缺陷状态、严重程度、优先级,按照公司的要求输出即可。
bug类型不是必须,看公司要求。

图片

某公司对缺陷提交要素的要求

2)但缺陷的核心要素却是下面这三种:

a)缺陷标题【核心】

缺陷标题作用,就是将缺陷描述清楚。

描述清楚的评价标准:就是开发人员时候可以不看其他要素,仅看标题就能知道反馈的是什么bug。

要想描述清楚,缺陷命名技巧要采用【实际结果+预期结果】的命名方法,

比如“验证码在(10,15]分依然能登录成功-预期失败,因有效时间是10分钟以内”;
再比如“QQ号为空,下一步可点击(预期不可点击)”


b)缺陷描述(重要)

缺陷描述,包含这四块:

1)预(前)置条件(对应测试用例的“前置条件”)
2)复现步骤(对应测试用例的“测试步骤”)
3)预期结果(对应测试用例的“预期结果”)
4)实际结果(对应测试用例的“实际结果”)

图片

画框部分为缺陷描述

缺陷描述虽然重要,但是撰写起来却很简单,将测试用例的核心写进来就可以。

为什么要缺陷描述中,要将测试用例为啥还要再表达一遍?

原因1:测试用例是指测试团队内部执行的一个重要产出,是测试组内部的执行参考(跨组不看)。
原因2:缺陷是提给开发的,你得让开发去再现这个缺陷(bug)。所以你需要把测试用例核心内容在缺陷(bug)里写清楚。

c) 必要附件

附件可以为下面三种,目的是为了避免和开发扯皮

或图片——能用图片反馈的bug一定要用图片
或日志——能放上日志就一定放上,方便开发进行bug分析
或视频——对于偶发性的bug,一定要录视频

4、怎么牢固掌握缺陷开发

缺陷相比测试用例而言,还是比较简单的。利用我刚才的文字就能掌握。

推荐视频如下:

1)北京校区-《1天软件缺陷与JIRA》
本视频b站链接:https://www.bilibili.com/video/BV1DU4y1w7tX

2 )《测试入门_9天黑马手工测试理论+实战完整分享_适合0基础》 
本视频b站链接:https://www.bilibili.com/video/BV1at4y1Y7AN

3)《实战项目带小白入职7-12k功能测试岗位,仅7小时【史上最快】》
本视频b站链接:https://www.bilibili.com/video/BV1kw411o756

八、总结:

业务理解,有效沟通,思维逻辑...这些对于测试人员来说,重要吗?

当然重要。但这些是能力,而不是基本功。

对于软件测试这种技术岗位而言,基本功指的是技术。

但拥有扎实的基本功,在当前经济环境下,还是很难就业的,还要掌握自动化技术。

因为各行各业都不好过,这个时候企业用人,就会找性价比更高的。

所以大家想从事测试工作,在搞定基本功的基础上,希望你能够再学习一些自动化的东西。

图片

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

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

相关文章

spring.profiles的使用详解

本文来说下spring.profiles.active和spring.profiles.include的使用与区别 文章目录 业务场景spring.profiles.active属性启动时指定 spring.profiles.include属性配置方法配置位置配置区别 用示例来使用和区分测试一测试二测试三 编写程序查看激活的yml文件本文小结 业务场景 …

TypeScript 学习笔记 环境安装-类型注解-语法细节-类-接口-泛型

文章目录 TypeScript 学习笔记概述TypeScript 开发环境搭建 类型注解类型推断 数据类型JS的7个原始类型Array数组object、Object 和 {}可选属性 ? 和 可选链运算符?. function函数TS类型: any类型 | unknow类型TS类型: void类型TS类型:never类型 (几乎…

noSQL的小练习

目录 Redis: 1、 string类型数据的命令操作: 2、 list类型数据的命令操作: 3、 hash类型数据的命令操作: MongoDB: 1. 创建一个数据库 名字grade 2. 数据库中创建一个集合名字 class 3. 集合中插入若…

C++基础算法二分篇

📟作者主页:慢热的陕西人 🌴专栏链接:C算法 📣欢迎各位大佬👍点赞🔥关注🚓收藏,🍉留言 主要讲解二分算法,分别讲解了整数二分和浮点二分 文章目录…

MobPush:Android SDK 集成指南

开发工具:Android Studio 集成方式:Gradle在线集成 安卓版本支持:minSdkVersion 19 集成准备 注册账号 使用PushSDK之前,需要先在MobTech官网注册开发者账号,并获取MobTech提供的AppKey和AppSecret,详情可…

elasticsearch基本操作

elasticsearch 下面参数详细解释 java 搜索查询看官方文档 https://www.elastic.co/guide/en/elasticsearch/client/java-api-client/8.8/connecting.html#_your_first_request{"name" : "Tom Foster","cluster_name" : "elasticsearch&q…

vue3+vite+ts+vant 开发浙里办H5应用流程和注意事项

vue3vitets 开发浙里办H5应用流程和注意事项 最近有个项目是要开发到浙里办的一个H5项目,记录一些问题; 浙里办irs系统内node版本和npm版本如下建议切到他们的版本再进行开发这样问题少一点 1.因为浙里办有自己的irs系统 需要吧前端整体的代码传上去 除了 打包后的dist 和 no…

【Win10系统下载Python3】

Python3官网:https://www.python.org/downloads/windows/ 注

TCP/IP网络编程 第十二章:I/O复用

基于I/O复用的服务器端 多进程服务器端的缺点和解决方法 为了构建并发服务器,只要有客户端连接请求就会创建新进程。这的确是实际操作中采用的种方案,但并非十全十美,因为创建进程时需要付出极大代价。这需要大量的运算和内存空间&#xff…

Unity Arduino 串口通信

一、Unity端发送消息&#xff0c;Arduino端接收消息 通过串口通信 Arduino端 #include <Arduino.h>#define PIN_KEY 5 uint item;void setup() {item 0;Serial.begin(115200);pinMode(PIN_KEY, OUTPUT); }void loop() {if(Serial.available()>0){item Serial.rea…

同比环比数据可视化

引言 数据分析和可视化在现代商业环境中变得越来越重要。随着数据的迅速增长&#xff0c;我们需要有效的工具来解释和理解这些数据。 数据可视化提供了一种直观的方式&#xff0c;帮助我们从海量数据中提取有意义的见解&#xff0c;以支持业务决策。 同比环比图作为一种常见的…

ceph集群(二)

ceph 一、资源池 Pool 管理二、创建 CephFS 文件系统 MDS 接口三、创建 Ceph 块存储系统 RBD 接口四、创建 Ceph 对象存储系统 RGW 接口五、OSD 故障模拟与恢复 一、资源池 Pool 管理 上次我们已经完成了 Ceph 集群的部署&#xff0c;但是我们如何向 Ceph 中存储数据呢&#x…

Nginx 解析漏洞复现

Nginx 解析漏洞复现 一、环境搭建二、漏洞原理三、漏洞复现 一、环境搭建 如下介绍kali搭建的教程 cd ~/vulhub/nginx/nginx_parsing_vulnerability // 进入指定环境 docker-compose up -d // 启动环境docker-compose ps使用这条命令查看当前正在运行的环境 访问http://y…

MFC第十八天 非模式对话框、对话框颜色管理、记事本项目(查找替换、文字和背景色、Goto(转到)功能的开发)

文章目录 非模式对话框非模式对话框的特点非模式对话框与QQ聊天窗口开发非模态对话框&#xff08;Modeless Dialog&#xff09;和模态对话框&#xff08;Modal Dialog&#xff09;区别 记事本开发CFindReplaceDialog类的成员查找替换(算法分析)使用RichEdit控件 开发Goto(转到)…

[LINUX]之字符串去掉前后空格

去掉字符串前后空格通过使用awk $1$1命令实现 echo " test " | awk $1$1

STM32实现MLX90614非接触测温串口显示(标准库与HAL库实现)

目录 模块选择 编程环境 MLX90614基本原理 通信协议&#xff08;SMBus通信&#xff0c;类IIC通信&#xff09; 代码实现 STM32与模块之间接线表 1.标准库实现温度采集 2.HAL库实现温度采集 模块选择 STM32F103C8T6 MLX90614 非接触式红外测温传感器 编程环境 KEIL5&…

图数据库:neo4j学习笔记

参考资料&#xff1a;neo4j 教程_w3cschool Springboot集成Neo4j_喝醉的咕咕鸟的博客-CSDN博客 SpringBoot 整合 Neo4j_springboot neo4j_$懒小猿$的博客-CSDN博客 图数据库Neo4j实战&#xff08;全网最详细教程&#xff09;_neo4j使用教程_星川皆无恙的博客-CSDN博客 代码片段…

04 QT坐标系

在QT中默认左上角为原点&#xff0c;即&#xff08;0,0&#xff09;点。x轴右侧为正方向&#xff0c;y轴以下侧为正方向

nosql作业

nosql作业 文章目录 作业一&#xff1a;string list hash结构中&#xff0c;每个至少完成5个命令&#xff0c;包含插入 修改 删除 查询&#xff0c;list 和hash还需要增加遍历的操作命令1、 string类型数据的命令操作&#xff1a;2、 list类型数据的命令操作&#xff1a;3、 ha…

.NET网络编程——TCP通信

一、网络编程的基本概念 : 1. 网络 就是将不同区域的电脑连接到一起&#xff0c;组成局域网、城域网或广域网。把分部在不同地理区域的计算机于专门的外部设备用通信线路 互联成一个规模大、功能强的网络系统&#xff0c;从而使众多的计算机可以方便地互相传递信息&#xff0c…