上班后很迷茫,到底该如何做一个合格的测试?

news2024/10/6 18:34:17

【软件测试面试突击班】如何逼自己一周刷完软件测试八股文教程,刷完面试就稳了,你也可以当高薪软件测试工程师(自动化测试)

如何做一个合格的测试?软件测试工程师的岗位职责到底是什么?

最初,我的想法是执行用例,找缺陷,仅此而已,简单粗暴。。。

后来,看了《Google的软件测试之道》这本书,稍微有点更改,变成了积极主动地发现、暴露缺陷,并团队合作,解决问题。。。

去年下半年,公司空降了一位总监,他提出了一个观点:提高交付质量和交付速率!顿时茅塞顿开,对呀,我们工作的目的不就是提高交付的软件系统质量,以及提高效率!

昨晚听同行分享后,思考总结了一下,针对如何提高交付的软件应用质量和速率这个问题,发现自己还有一些细节的地方没考虑到,果然还是经验不足,学习成长的道路,任重而道远!!!

下面的内容,重新整理了大佬分享的几个观点,结合自己的一些想法,算是做一个参考吧。。。

一、需求
1、需求评审

为什么要需求评审?原因有下面几点:

①、熟悉业务,由产品或者业务讲解需求,好做到心中有数,不至于到开发测试阶段暴露出由于业务不熟悉导致的问题;

②、多方协定,在正式进入开发阶段之前,测试、开发、产品就某些需求的不确定点进行确认,达成一致,避免后续的问题;

③、评估工作量,实现难度,以及大概的资源投入;

④、明确开发测试边界、目标和范围,做什么不做什么;

2、需求文档

①、尽可能的详细,需要从需求中提取相应的功能点和测试点;

②、功能点和测试点选取适当的粒度,这样可以较容易的观察到测试结果和需求的偏离度;

③、一般来说,系统越大,业务越复杂,需求的偏离度判定比小系统更容易些;

二、系统架构
除了需求,了解熟悉整个系统的技术架构,也是必须的一点。比如整个系统的架构组成,各自的特点,采用了什么通信服务框架,数据库类型,前后端框架等等,这样可以更方便定位缺陷,

以及根据系统架构选择合适的自动化测试框架、性能测试策略等。

特征:一般来说,系统的稳定性越好,那么它的可适应性就越差,其带来的影响是每次架构变更的成本上升以及开发团队重新建设抑或测试团队整体方向上的变化。

这几年开始流行和大规模应用的分布式架构、微服务等,都是从系统的可用性和伸缩扩展性来考虑,以降低各方面的变更带来的成本。

三、流程管理
测试过程结果的记录应该在一定程度上取决于流程的记录完整程度。

如果涉及到流程更改,也应对不同的观察对象(测试/开发)所产生的效果和结果进行记录,以判断其对质量的影响以及评估标准。

测试流程如下:

①、启动阶段

开发经理在开发计划中确定测试提交时间,测试主管得到当前最新的相关文档资料后进行规模预估并成立测试小组,完成《测试计划》;

②、设计阶段

包含测试计划、测试方案、测试用例等输出文档;

在需求分析文档确立基线以后,测试组需要针对测试需求编写测试用例,在实际的测试中,测试用例将是唯一实施标准。在用例的编写过程中,具体的任务和责任人如下:

③、实施阶段

执行测试用例将花费测试组绝大部分时间,这些工作都是建立在前期很多计划工作的基础之上;

④、报告阶段

在当天(或每个小的阶段)的测试完成之后,测试工程师需要总结当天测试的结果,报告测试进度;

⑤、总结阶段

在测试结束之后,测试主管编写测试报告,对测试进行总结,并且提交,为产品的后续工作提供重要的信息支持;

⑥、验收阶段

在以上工作全部结束后,对测试的过程,结果进行验收,宣布测试阶段性结束;

⑦、归档阶段

测试归档是在测试验收结束宣布测试有效,结束测试后,对测试过程中涉及到各种标准文档进行归档;

四、文档管理
文档对工作的帮助,是很有必要的。虽然现在很多企业提倡敏捷,但敏捷并非没有文档,而是轻文档。文档的重要性有如下几个方面:

1、对历史以及当前测试过程中的知识传递有很大帮助;

2、可以通过对比历史和当前文档的变更,较容易的观察到整个需求变更过程中测试的质量;

3、涉及到人员变更或者缺陷的争论时,有更快的知识传递速率和参考依据;

五、风险管理
项目的每个阶段都存在风险,常见的缺陷有下面几点:

1、需求不明确;

2、系统设计或测试设计不完善;

3、不安全规范的代码编写方式;

4、测试用例不充足,覆盖率较低;

5、测试资源不足,回归工作量预估不当;

7、项目进度安排不妥,其他项目对本项目的影响;

因此,风险管理和防范是必要且重要的一项工作,且测试工程师的职责,不就是提供交付软件的质量么!!!

六、时间管理
有一定测试经验的工程师基本都经历过资源投入不足,时间不足的问题,测试时间被压缩,导致的加班甚至生产事故!因此做好时间管理,就显得如此重要。

会管理时间的人往往离成功更近一步,如何合理的利用时间解决紧急的项目问题、冲突问题、资源安排问题、优先级、测试用例的执行顺序等,做好时间管理是保证质量的因素之一。 

比如涉及到新增需求or需求变更都必须要有相应的文档(可以为需求说明书或邮件说明)作为测试的依据;

  下面是配套学习资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

软件测试面试小程序

被百万人刷爆的软件测试题库!!!谁用谁知道!!!全网最全面试刷题小程序,手机就可以刷题,地铁上公交上,卷起来!

涵盖以下这些面试题板块:

1、软件测试基础理论 ,2、web,app,接口功能测试 ,3、网络 ,4、数据库 ,5、linux

6、web,app,接口自动化 ,7、性能测试 ,8、编程基础,9、hr面试题 ,10、开放性测试题,11、安全测试,12、计算机基础

 

文档获取方式:

这份文档,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

以上均可以分享,只需要你搜索vx公众号:程序员雨果,即可免费领取

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

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

相关文章

倒计时列表实现(小程序端Vue)

//rich-text主要用来将展示html格式的&#xff0c;可以直接使用这个标签 <view class"ptBox" v-for"(item,index) in orderList" :key"index"> <rich-text :nodes"item.limit_time|limitTimeFilter"></rich-text>…

vue+three.js中使用Ammo.js

直接通过npm i ammo.js安装进webpack的项目里调用时&#xff0c;会出现如下报错&#xff1a; ERROR in ./node_modules/ammo.js/ammo.js 1:1683-1696 Mo…

VMware中安装Ubuntu(2023年)

Ubuntu安装 前言 安装过程中电脑发热时正常的&#xff0c;这个还是稍微有点点大&#xff1b;下载的版本根据自己的喜好来&#xff0c;新版本肯定要比旧版本占用的空间更大&#xff0c;大家自行选择&#xff1b;仅供学习使用的话可以下载成熟稳定的版本&#xff0c;例如16、18…

【新版】系统架构设计师 - 案例分析 - 架构设计<SOA与微服务>

个人总结&#xff0c;仅供参考&#xff0c;欢迎加好友一起讨论 文章目录 架构 - 案例分析 - 架构设计&#xff1c;SOA与微服务&#xff1e;例题1例题2例题3例题4 架构 - 案例分析 - 架构设计&#xff1c;SOA与微服务&#xff1e; 这里SOA与微服务的例题只对应找寻了几个&#x…

servlet开发-通过Tomcat部署一个简单的webapp

首先我们得下载安装Tomcat&#xff0c;推荐看Tomcat&#xff08;HTTP服务器&#xff09;下载以及认识&#xff0c; 我们将通过打印一个hello word的方式来熟悉servlet开发,通过Tomcat部署一个webapp的流程 servlet的含义 Tomcat提供了一系列的api接口&#xff0c;这些api背后…

dfs力扣1993树上的操作

文章目录 dfs力扣1993树上的操作题目示例提示做题历程做题思路数组定义编写代码 完整代码 dfs力扣1993树上的操作 题目 题目链接 给你一棵 n 个节点的树&#xff0c;编号从 0 到 n - 1 &#xff0c;以父节点数组 parent 的形式给出&#xff0c;其中 parent[i] 是第 i 个节点…

Java多线程篇(5)——cas和atomic原子类

文章目录 CASAtomic 原子类一般原子类针对aba问题 —— AtomicStampedReference针对大量自旋问题 —— LongAdder CAS 原理大致如下&#xff1a; 在java的 Unsafe 类里封装了一些 cas 的api。以 compareAndSetInt 为例&#xff0c;来看看其底层实现。 可以发现&#xff0c;最…

基于abaqus的非等速生长Voronoi晶体模型生成插件

1. 非等速生长晶体模型简介 对于标准Voronoi而言&#xff0c;每个晶粒的生长速率是相同的&#xff0c;任意两个晶粒的交界线为其形核点连线的垂直平分线&#xff0c;交界线为一条直线&#xff0c;如图1.1所示。 图1.1 标准Voronoi晶粒交界线 而对于非等速生长Voronoi晶体而言…

项目篇——java文档搜索引擎

Java 文档搜索引擎 文章目录 Java 文档搜索引擎一、分词二、完成parser 类2.1、排除非html文件2.2、解析html以下是解析 HTML 标题的方法以下是解析 对应的 URL以下是解析 HTML的正文&#xff1a; 补充&#xff1a;倒序索引 三、实现 index 类3.1、实现索引结构3.2、索引中新增…

学会使用Git 和 GitHub

Git 和 GitHub 都是程序员每天都要用到的东西 —— 前者是目前最先进的 版本控制工具&#xff0c;拥有最多的用户&#xff0c;且管理着地球上最庞大的代码仓库&#xff1b;而后者是全球最大 同性交友 代码托管平台、开源社区。 在没有这两个工具时&#xff0c;编程可能是这样的…

Go环境搭建

下载 官网地址 选择Download 根据自己的请选择对应的版本进行下载(我这里使用windos go.1.21.1版本) 我这里选择zip类型进行下载免安装版(你也可以选择mis类型进行下载,安装版一步一步next就行)。 安装 解压安装包 目录说明 配置环境变量 验证是否安装成功 完成上述配置…

通过插件去除Kotlin混淆去除 @Metadata标记

在Kotlin中&#xff0c;Metadata是指描述Kotlin类的元数据。它包含了关于类的属性、函数、注解和其他信息的描述。Metadata的作用主要有以下几个方面&#xff1a; 反射&#xff1a;Metadata可以用于在运行时获取类的信息&#xff0c;包括类的名称、属性、函数等。通过反射&…

【功能设计】数据分发功能设计

文章目录 设计脑图功能性非功能性 功能设计文档1. 需求分析1.1、功能性需求1.2、非功能性需求 2. 功能设计2.1 业务流程图2.2 数据流图2.3 表结构设计2.4 接口设计2.5 功能点 3.非功能性设计3.1 性能3.2 可用性3.3 并发性3.4 安全性 设计脑图 功能性 非功能性 功能设计文档 1…

国庆中秋特辑(三)使用生成对抗网络(GAN)生成具有节日氛围的画作,深度学习框架 TensorFlow 和 Keras 来实现

要用人工智能技术来庆祝国庆中秋&#xff0c;我们可以使用生成对抗网络&#xff08;GAN&#xff09;生成具有节日氛围的画作。这里将使用深度学习框架 TensorFlow 和 Keras 来实现。 一、生成对抗网络&#xff08;GAN&#xff09; 生成对抗网络&#xff08;GANs&#xff0c;…

FFMpeg zoompan 镜头聚焦和移动走位

案例 原始图片 # 输出帧数&#xff0c;默认25帧/秒&#xff0c;25*4 代表4秒 # s1280x80 # 输出视频比例&#xff0c;可以设置和输入图片大小一致 # zoom0.002 表示每帧放大的倍数&#xff0c;下面代码是25帧/每秒 * 4秒&#xff0c;共1000帧 # 最终是 0.002*25*4 0.2&…

什么是深度学习?最易懂的机器学习入门文章

1. 什么是深度学习? 深度学习是机器学习领域中一个新的研究方向&#xff0c;它被引入机器学习使其更接近于人工智能。 原文&#xff1a;【科普&实践】超详细&#xff01;一文带你玩转深度学习 - 飞桨AI Studio星河社区 深度学习是机器学习领域中一个新的研究方向&#xff…

折腾LINUX复古终端

这个复古终端是cool-retro-term&#xff0c;先来图 点击GITHUB地址 开始用docker运行&#xff0c;报错。后来用x11docker&#xff0c;因为我要远程通过SSH的x11转发&#xff0c;但实际x11docker的默认backbone就说docker&#xff0c;也就说要先用docker下载镜像&#xff0c…

[maven] 实现使用 plugin 及 properties 简述

[maven] 实现&使用 plugin 及 properties 简述 这章内容&#xff0c;我个人感觉可看可不看……&#xff1f; 不过课都上了&#xff0c;笔记 &#x1f4d2; 补完才对得起自己嘛 plugins 主要讲一下 maven 的 plugin 时怎么实现的&#xff0c;以及项目中怎么调用自己实现…

成集云 | 用友T+集成聚水潭ERP(用友T+主管供应链)| 解决方案

源系统成集云目标系统 方案介绍 用友T是一款由用友畅捷通推出的新型互联网企业管理系统&#xff0c;它主要满足成长型小微企业对其灵活业务流程的管控需求&#xff0c;并重点解决往来业务管理、订单跟踪、资金、库存等管理难题。 聚水潭是一款以SaaS ERP为核心&#xff0c;集…

mysql事务测试

mysql的事务处理主要有两种方法1、用begin,rollback,commit来实现 begin; -- 开始一个事务 rollback; -- 事务回滚 commit; -- 事务提交 2、直接用set来改变mysql的自动提交模式 mysql默认是自动提交的&#xff0c;也就是你提交一个sql&#xff0c;它就直接执行&#xff01;我…