软件测试( 基础篇)

news2024/11/15 9:22:31

前言

从这篇博文开始,我们将作为一名刚刚加入测试团队的菜鸟,开始一次测试之旅。
在这里我们将讨论以下问题:

软件测试的生命周期
如何描述一个bug
如何定义bug的级别
bug的生命周期
产生争执怎么办

软件测试的生命周期

先回顾一个点:软件开发的生命周期

1、需求分析
2、计划【时间,人员,功能的方向和范围】
3、设计【功能,框架,算法】
4、编码
5、测试
6、运行维护

那么,软件测试的生命周期包含哪几个部分?

1、需求分析

验证需求的正确性,以及合理性接着便是细化需求,找出测试项,方便后面写测试用例

2、测试计划(部分)

        确定测试的人数
        确定测试的环境

        确定测试的时间

        确定测试的设备

3、测试设计 / 测试开发
根据需求,写出测试用例

4、测试执行
此时开发已经完成,执行测试用例,验证功能,
在验证功能的过程中,可能会遇到 软件功能与需求不相符的七情,也就是出BUG了。
于是,测试人员就会把这个BUG 交给 开发人员。
等到开发人员处理好了之后,我们测试人员又要对其进行验证。

5、测试评估
        1、写了多少测试用例,执行了多少测试用例。
        2、剩余的测试用例,为什么不把它执行完。

        3、BUG数量。
        4、已解决的BUG数量
        5、遗留的BUG,以及解决方案。

        6、此次测试的范围和测试功能都要说清楚。

如何描述一个BUG

首先,我们要理解一件事:为什么要描述一个 BUG ??

为了给开发人员看。
文字 和 口头 描述,都是存在的。

但实际上,我们是有专门的 BUG管理工具。
这个工具里面,它会把 BUG需要描述的地方,讲得非常清楚。

下面我们来看一下具体如何描述一个 BUG

1、测试的版本号(代码的版本信息)

2、测试环境

比如:QQ音乐的播放界面,在360浏览器上支持,在IE浏览器上不支持。
连操作都不能,更别提放音乐了。


3、测试数据
测试数据,往往是能让开发人员更加快速的复现问题因为数据出现错误的概率,比前面环境出错的概率更大

4、测试步骤
就是怎么去操作,会出现BUG,帮助开发人员更快的复现问题。

5、测试的实际结果
不看到结果,我们怎么知道验证的软件功能是否正确?
拿着预期结果 与 实际结果 进行比较,如果匹配,表示软件功能实现完成,反之,则软件功能实现失败。
这样开发人员就知道,他需要关注的地方在哪里

6、附件:错误日志,错误截图等等。。。
还是一样的,为了更好的辅助开发人员复现 BUG,早日解决bug。

7、其他
某些公司会有一些其他的要求,例如故障的分类:功能故障,界面故障,兼容性故障等。有些有优先级的分类,严重影响测试需要开发人员优先修改的,可以设置优先级为高

8、不要把多个bug放到一起
在无法确认是同一段代码造成的故障时,不要将bug放在一起提交。 

BUG的级别 - 仅了解

对于BUG的级别,每个公司都不一样,这里只是讲典型的,普遍的情况

崩溃:
系统无法正常执行:出现崩溃,操作死锁,死循环,黑屏。。。
出现以上这些情况会严重阻碍测试人员的工作,应立即反馈给开发人员进行修改

另外,我们再来思考一个问题: 如果线上出现这种 崩溃级别的BUG,该如何 处理/补救?

最简单直效的方式就是:回退到一个稳定版本。[回退版本:你要知道上一个稳定运行版本的版本号,然后通过Bit来实现回退,

严重
系统可以运行,但是不稳定,继续运行下去会造成严重的损失。
一般都是 重要的功能没有实现,或者功能和需求不匹配。
还有就是 用户数据存储错误

一般用户数据都是存储在数据库中的,如果存储用户的信息错误,尤其是还是和钱有关的,事情就大发了而且严重时,会威胁到用户的安全(信息,财产) ! ! !
注意!我这里说的是存储信息错误,可能是存储信息有偏差,也可能就是信息存到别的地方去了。如果是后者,这个存储地方是一个公开的,这个信息又包含了用户的敏感信息,被别人一抓包拿到了,那就GG了[比如: 用户的操作日志]

一般
次要的功能没有实现,或者有错误,但是不影响系统,系统可以稳定的运行

建议
这种类型的bug,可能需求上没有写。只是会影响到用户的体验。
比如:
1、界面排版很挫,不符合大众的审美、
2、显示的信息没有进行换行处理...


BUG的生命周期

BUG的生命周期:从发现这个bug 到 解决这个bug,整个的一个流程。
简单来说:BUG的生命周期 就是 BUG 的 各种生存状态。

● New:新发现的Bug,未经评审决定是否指派给开发人员进行修改。
● Open:确认是Bug,并且认为需要进行修改,指派给相应的开发人员。
● Fixed:开发人员进行修改后标识成修改状态,有待测试人员的回归测试验证。
● Rejected:如果认为不是Bug,则拒绝修改。
● Delay:如果认为暂时不需要修改或暂时不能修改,则延后修改。
● Closed:修改状态的Bug经测试人员的回归测斌验证通过,则关闭Bug。
● Reopen:如果经验证Bug仍然存在,则需要重新打开Bug,开发人员重新修改。
无效的bug:open->closed open-rejected-closed

BUG状态变更流程每个项目团队的实际做法可能不大一样。并且需要结合实际的开发流程和协作流程来使用

例如,测试人员新发现的Bug,必须由测试组长评审后才决定是否Open并分派给开发人员。
测试人员Open的Bug可以直接分派给Bug对应的程序模块的负责人,也可以要求都先统一提交给开发主管,由开发主管审核后再决定是否分派给开发人员进行修改。

Bug的跟踪以及状态变更应该遵循一些基本原则:
测试人员对每一个BUG的修改必须重新取一个包含更改后的代码的新版本进行回归测试,确保相同的问题不再出现,才能关闭缺陷。
对于拒绝修改和延迟修改的Bug,需要经过包含测试人员代表和开发人员代表、用户方面的代表(或代表用户角度的人)的评审。

如果因为 BUG 和 开发人员产生冲突,该如何处理?- 面试问题

1、检查,查看自己对BUG的描述是否清楚
2、从用户的角度去说服开发人员

应该让开发人员了解到Bug对用户可能造成的困扰,这样才能促使开发人员
更加积极地、高质量地修改Bug。
因为有些时候,真的有些bug可改可不改。
但是改了的,用户的体验会非常好。
而且,有些bug产生的原因是因为 在需求文档中没有描述的很清楚!
虽然 软件需求 是 用户需求 的进一步细化,但是有些时候,产品经理也考虑的不是很周全。
又或者说,没有产品经理该怎么办?
下面我们来看一个例子 

3、BUG定级要有理有据【根据公司的规范】
如果只是你自己觉得这个BUG很严重,人家开发人员肯定不干!
人家是为公司打工,又不是为你。

4、要不断提升 自己的 业务水平,和 技术水平。
不但能够发现BUG,并且能够定位。
还能够提出解决方案
【这些能力,工作久了,自然也就具备了】

5、开发人员不接受时,不要争吵,
可能你已经经过了多轮沟通,但是开发人员仍然拒不接受。此时可以发起Bug评审。
找产品经理讨论,后面就会开展一个三方会议、
测试人员,开发人员,产品经理会一起讨论这个bug的最终解决方案。

也就是说:遇到bug不要慌!有人比更着急!你只需要做好你本分的工作就OK了。
大家都是出来打工的,没必要计较! 

为下一篇用例篇博文做铺垫

实战案例:QQ登录测试用例

下面,我们来看一下,具体的测试点有哪些?
我只对难理解的部分,做出注释。

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

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

相关文章

TortoiseSVN安装与配置教程:使用内网穿透实现公网提交文件到本地SVN服务器

文章目录 前言1. TortoiseSVN 客户端下载安装2. 创建检出文件夹3. 创建与提交文件4. 公网访问测试 前言 TortoiseSVN是一个开源的版本控制系统,它与Apache Subversion(SVN)集成在一起,提供了一个用户友好的界面,方便用…

SpringBoot整合redis实现过期Key监控处理(最简单模式)

前言:写这篇文章的目的主要是这方面的知识我是第一次实际运用到,在项目里面有个功能,需要登录的时候根据手机号发送短信验证码,我看了公司的代码是用redis过期key监控实现的,由于之前没有接触过这类,现在写…

Java CC 解析 SQL 语法示例

示例:SimpleSelectParser 解析 select 11; 输出 2; 0)总结 编写 JavaCC 模板,*.jj 文件。 编译生成代码文件。 移动代码文件到对应的包下。 调用生成的代码文件。 1)JavaCC 模板 main/javacc/SimpleSelectParse…

C# Socket通信从入门到精通(3)——单个异步TCP客户端C#代码实现

前言: Socket通信中有tcp通信,并且tcp有客户端,tcp客户端程序又分为同步通信和异步通信,所谓同步通信其实就是阻塞式通信,比如客户端调用接收服务器数据函数以后,如果服务器没有发送数据给客户端,则客户端程序会一直阻塞一直到客户端接收到服务器的数据为止;所谓异步通…

电脑文件加密软件

天锐绿盾电脑文件加密软件是一款专业的信息安全防泄密软件。该软件基于核心驱动层的透明加密软件,为企业提供信息化防泄密一体化方案,不改变操作习惯,不降低工作效率,实现数据防泄密管理。 PC访问地址: https://isite…

Redis incr实现流水号自动增长

文章目录 问题描述:实现思路代码案例 问题描述: Java项目实现流水号自动增长,项目需求中有时需要生成一定规则递增编号: eg用户编码自动生成,规则:user7位数字,每次新增自增长,例&…

Nginx安装配置项目部署然后加SSL

个人操作笔记记录 第一步:把 nginx 的源码包nginx-1.8.0.tar.gz上传到 linux 系统 第二步:解压缩 tar zxvf nginx-1.8.0.tar.gz 第三步:进入nginx-1.8.0目录 使用 configure 命令创建一 makeFile 文件。 直接复制过去运行 ./configur…

考过PMP之后,要不要继续学CSPM?

在7年前拿下了PMP证书,但又在今年报名了CSPM中级的学习,身边很多人都疑问,为什么还要继续花钱考一个新出的证书?是不是闲的没事干?下面跟大家说下我的想法,仅作参考。 1)了解项目管理行业的新动…

OpenCV视频车流量识别详解与实践

视频车流量识别基本思想是使用背景消去算法将运动物体从图片中提取出来,消除噪声识别运动物体轮廓,最后,在固定区域统计筛选出来符合条件的轮廓。 基于统计背景模型的视频运动目标检测技术: 背景获取:需要在场景存在…

【Python微信机器人】第二篇:将python注入到其他进程

目录修整 目前的系列目录(后面会根据实际情况变动): 在windows11上编译python将python注入到其他进程并运行使用C写一个python的pyd库,用于实现inline hookPython ctypes库的使用使用ctypes主动调用进程内的任意函数使用汇编引擎调用进程内的任意函数(为了调用不遵…

pdf误删恢复如何恢复?分享4种恢复方法!

如何将pdf误删恢复?使用电脑的时候,经常会需要使用到pdf文件,但是有时候,因为一些操作上的失误,我们会丢失一些重要的文件。如果你不小心将pdf误删了,该如何进行恢复呢? PDF文件丢失的原因可以…

Bertopic 运行中报错记录

1、下载模型报错ConnectionError: (ProtocolError(‘Connection aborted.’, ConnectionResetError(54, ‘Connection reset by peer’)) 运行代码: topics, probabilities model.fit_transform(docs)报错内容: ConnectionError: (ProtocolError(‘C…

【Unity】渲染性能开挂GPU Animation, 动画渲染合批GPU Instance

GPU Instance和SRP Batcher合批渲染只对静态MeshRenerer有效,对SkinMeshRenderer无效。蒙皮动画性能堪忧,对于海量动画物体怎么解决呢?针对这个问题,GPU Animation就是一个常见又简单的解决方案。 GPU动画实现原理: …

【深圳1024开发者城市聚会定向征文】

在这个周末,我有幸参加了1024程序员节活动,这是一个专门为程序员们举办的活动,旨在庆祝程序员这个特殊的群体。在这个活动中,我不仅感受到了浓厚的编程氛围,还收获了许多宝贵的经验和知识。 活动在深圳湾科技生态园举…

漏洞复现--金和OASQL注入

免责声明: 文章中涉及的漏洞均已修复,敏感信息均已做打码处理,文章仅做经验分享用途,切勿当真,未授权的攻击属于非法行为!文章中敏感信息均已做多层打马处理。传播、利用本文章所提供的信息而造成的任何直…

坚固可靠的多合一轨道交通天线让您的赏秋路途不再枯燥

今年的法定节假日余额已清零,虽然国庆已过,但秋天正是出游的大好时节。在出游计划中,首先面临的就是交通工具的选择这个大难题,到底是选择自由度更高的自驾前往?还是更省心的公共交通?高铁上的信号质量依旧…

ATA-5510前置微小信号放大器在半导体测试中的具体应用

在现代电子技术领域,半导体器件的测试是非常重要的一环。而前置微小信号放大器在半导体测试中扮演着至关重要的角色。本文将介绍前置微小信号放大器在半导体测试中的原理和应用。 在半导体测试中,通常需要测试非常微弱的信号,这些信号可能受到…

大数据分析平台Splunk Enterprise结合cpolar实现公网远程访问

文章目录 前言1. 搭建Splunk Enterprise2. windows 安装 cpolar3. 创建Splunk Enterprise公网访问地址4. 远程访问Splunk Enterprise服务5. 固定远程地址 前言 Splunk Enterprise是一个强大的机器数据管理平台,可帮助客户分析和搜索数据,以及可视化数据…

福建泉州航海快艇蓝光三维扫描全尺寸测量船只外观设计三维建模-CASAIM中科广电

造船行业是一个与全球经济发展密切相关的关键行业。近年来,随着全球经济的快速发展,造船行业也不断进步和发展。快艇制造业作为小型、快速的船只的产业,所生产的船只通常用于娱乐、旅游、商业等方面,因此这种类型的快艇对于外观设…

科普:数控机床主轴的结构选型及维护保养

数控机床主轴是数控机床的重要组成部分,它的性能直接影响到数控机床的加工精度和加工效率。本文将详细介绍数控机床主轴的结构、性能指标、品牌选型以及维护保养等方面的知识,以便更好地了解和掌握数控机床主轴的相关知识。 一、数控机床主轴的结构 数…