软件测试基础

news/2025/1/18 8:33:26/

在这里插入图片描述

请添加图片描述

⭐️前言⭐️

🍉博客主页: 🍁【如风暖阳】🍁
🍉精品Java专栏【JavaSE】、【备战蓝桥】、【JavaEE初阶】、【MySQL】、【数据结构】
🍉欢迎点赞 👍 收藏留言评论 📝私信必回哟😁

🍉本文由 【如风暖阳】 原创,首发于 CSDN🙉

🍉博主将持续更新学习记录收获,友友们有任何问题可以在评论区留言

🍉博客中涉及源码及博主日常练习代码均已上传码云(gitee)、GitHub


请添加图片描述

📍内容导读📍

  • 🍅1.软件测试的生命周期
  • 🍅2.再谈bug
    • 2.1 如何描述一个bug?
    • 2.2 bug的等级
    • 2.3 bug的生命周期
  • 🍅3.和开发产生争执怎么办

请添加图片描述

🍅1.软件测试的生命周期

在上篇文章【软件测试基本概念4】中,我们认识到了软件的生命周期,即需求分析、计划、设计、编码、测试、运行维护,因为软件测试需要贯穿软件的整个生命周期,所以软件测试也有与软件生命周期对应的周期。

软件测试的生命周期如下图所示:
在这里插入图片描述
测试人员需要在上图中所展示的各个阶段做以下的事情:

  • 需求分析阶段:
    站在用户的角度,查看需求逻辑是否正确,是否符合用户的需求和行为习惯。
    还需要站在开发人员的角度,思考需求是否可以实现,或者实现起来难度大小。

  • 测试计划阶段:
    制定测试计划(包括但不限于测试的工时,人力的安排)

  • 测试设计、测试开发阶段
    设计测试用例,经验丰富的白盒测试人员可以开始单元测试

  • 测试执行阶段:
    参考测试用例来执行测试

  • 测试评估阶段
    测试人员需要记录测试,做好缺陷管理,然后进行测试的评估

🍅2.再谈bug

2.1 如何描述一个bug?

提bug并不是简简单单的指出错误,需要有完整的体系来指出一个bug,通常描述一个bug应该具备以下内容:

  • 发现bug的版本
  • 发现bug的环境
  • 发现bug的步骤
  • 期望的结果
  • 实际的结果
  • 其他(bug类型、bug等级)

下边我们来具体提出一个bug:

在这里插入图片描述
标题:微软浏览器打开首页后,在缩放为110%时,第一个banner页上面的二维码被登录注册控件遮蔽住,导致无法扫描

发现bug的版本:Microsoft Edge版本 107.0.1418.56 (正式版本) (64 位)

发现bug的环境:win10 Microsoft Edge

发现bug的步骤:1.打开Edge浏览器,访问首页链接https://www.101eduyun.com/sunrise/login/login.do
2.调整页面缩放

期望的结果:首页的第一个banner上的二维码清晰可见,可以通过手机扫描

实际的结果:首页的第一个banner上的二维码被登录注册控件遮蔽住了,导致手机扫描二维码失败。

其他:(bug类型:前端/后端问题,bug等级:次要…)

2.2 bug的等级

bug的定义每个公司都不一致,在定义级别执行前都需要查看公司规范。

以下为样例:

1.崩溃
阻碍开发或测试工作的问题;造成系统崩溃、死机、死循环,导致数据库数据丢失,与数据库连接错误,主要功能丧失,基本模块缺失等问题。

这种级别的bug很少见,基本不可见

2.严重
系统主要功能部分丧失、数据库保存调用错误、用户数据丢失,一级功能菜单不能使用但是不影响其他功能的测试。

这种级别的bug也比较少见

3.一般
功能没有完全实现但是不影响使用,功能菜单存在缺陷但不会影响系统稳定性。

4.次要
主要就是一些优化建议类的问题。

一般和次要的bug更为常见

2.3 bug的生命周期

以下是bug的生命周期图
在这里插入图片描述

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

🍅3.和开发产生争执怎么办

这个问题是经常会出现的面试题。

1.应该具有批判性思维,多反思自己是不是bug描述的不清楚(无效的bug)

2.bug等级一定要有理有据(提出了一个bug是严重级别,开发不认可)

3.合理友好的沟通,站在用户的角度反问:如果你是用户,你能接受这样吗?
(开发对你说bug可不可以不改,小问题)

4.不仅仅能够提出问题,最好也能够给出解决方案。

5.组织bug评审
邀请代表参加bug评审:产品代表、开发代表、测试代表,进行以下工作:
1)如何解决bug?
2)如何预防类似的bug?


⭐️最后的话⭐️
总结不易,希望uu们不要吝啬你们的👍哟(^U^)ノ~YO!!如有问题,欢迎评论区批评指正😁

请添加图片描述


http://www.ppmy.cn/news/160.html

相关文章

Pytest接口测试框架实战项目搭建(三)

一、前言 前面相当于已经讲完整体框架搭建了,本篇主要讲述在实际业务系统的接口请求中,如何运用好该接口自动化测试框架。 二、步骤演示 1、在conf/api_path.py新增需要测试的接口,标黄底色为新加 存放测试接口仅这一个文件就行&#xff0c…

线程安全和synchronized关键字

一,线程安全的引入 1.示例 多线程在多进程的基础上更好解决了并发问题,但由于一个进程内的多个线程是资源共享的,就会出现多个线程在并发执行的时候造成内存中数据的混乱。 举一个例子: class Counter {public int count;publi…

MobPush 推送查询API

设备详情接口 接口地址:http://api.push.mob.com/device-v3/getById/registrationId 接口示例:http://api.push.mob.com/device-v3/getById/65ou4rojokauxog 请求方式:GET 接口访问频率限制:受限,参照接口频率限制…

Online Decision Transformer

摘要 最近的工作表明,离线强化学习 (RL) 可以表述为序列建模问题 (Chen et al., 2021; Janner et al., 2021),并通过类似于大规模语言建模的方法来解决。 然而,RL 的任何实际实例化还涉及在线组件,其中在被动离线数据集上预训练的…

如何翻译英文音频?看完你就学会了

在平时的工作中,相信大家应该都会遇到一些不太熟悉的英文或者其它外文的语言,这给我们的生活带来了诸多烦恼,那遇到这种情况,我们应该怎么办呢?其实很简单,我们可以利用一些软件来将这些语言转换成中文&…

Java本地搭建实战毕设项目sprignboot电商书城管理系统源码

大家好啊,我是测评君,欢迎来到web测评。 本期给大家带来一套Java开发的sprignboot电商书城管理系统源码,包含前端界面、后台管理界面。适合拿来做毕业设计的同学。可以下载来研究学习一下。本期就把这套系统分享给大家。 技术架构 技术框架&…

C语言 深度探究C语言中的多字节字符

多字节字符 本章介绍 C 语言如何处理非英语字符。 Unicode 简介 C 语言诞生时,只考虑了英语字符,使用7位的 ASCII 码表示所有字符。ASCII 码的范围是0到127,也就是最多只能表示100多个字符,用一个字节就可以表示,所…

卡尔曼滤波与融合算法

不要被复杂公式吓到,按下面的步骤一步一步来,每个概念都学清楚,卡尔曼并不难理解学习卡尔曼,需要先了解几个基础知识 测不准定律:比如说我们要测量一个电压,需要借助传感器,但是传感器无法给出真…