测开-基础篇

news2024/11/18 15:45:49

一、软件测试的生命周期

先来回顾软件的生命周期

🍑软件的生命周期


需求分析--》计划--》设计--》编码--》测试--》运营维护

需求分析:进行市场分析,这个需求量大不大?投入与盈利的占比?技术上 能否实现或者说实现的难度?

计划:什么时候开始?什么时候结束?过程耗时多少?

设计:将需求细化为一个一个的任务,进行计算设计(要用到哪些接口?采用什么框架?

编码:开发人员参考需求文档和技术文档进行功能代码的编写

测试:测试人员要参考测试用例来执行测试(注意测试用例是在测试前就编好的,要明白我们的测试是贯穿软件的整个生命周期的)

运行维护:修复性的维护(对项目中未发现的问题进行修复)完善性维护(对功能进行完善)预防性维护(居安思危,为了避免产品在线上出现一些意想不到的问题,进行一些预防的手段)
 

我们必须清楚软件测试贯穿软件的整个生命周期、

🍑软件测试的生命周期

需求分析——》测试计划——》测试设计与开发——》执行测试——》测试评估

需求分析

测试计划

测试计划:测试人员也需要编写测试计划文档——有多少测试人员,什么时候开始测试?

测试设计与开发

测试设计与开发:测试人员需求借助需求文档和技术文档来编写测试用例。

执行测试

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

测试评估

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

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

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


二、如何描述一个BUG?

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

2、测试环境

3、错误重现的步骤

描述问题重现的最短步骤。

4、预期行为的描述

要让开发人员指导怎么样才是正确的,尤其要以用户的角度来描述程序的行为是怎样的。如果是依据需求提出的故障,能写明需求的来源是最好的。
要相信:测试人员是最懂需求的。

5、错误行为的描述

描述错误的现象。crash等可以上传log,UI问题可以有截图。

6、其他

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

🔔注意:不要把多个BUG放到一起


🌰例子
故障发现版本:VPS20180226_01
故障类别:兼容性
故障优先级:中
故障标题:ie下界面显示异常,界面文字有重叠
故障描述:
测试环境:win7+IE8
测试步骤:1、打开vps首页,点击“通知”链接,进入通知页面
预期结果:通知页面显示正确,一页显示10条通知,按时间顺序倒序排列
实际结果:页面显示10条通知,通知顺序正确,但是页面文字有重叠
附件:上传截图


三、BUG的等级

从小到大分别为:次要——》一般——》严重——》崩溃

四、BUG的生命周期

 

五、面试题:关于BUG,与开发人员产生纠纷怎么办?

 bug评审要解决如下问题

  • 如何修改bug?
  • 如何避免类似问题的出现?

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

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

相关文章

深度学习 10 神经网络简介

1. 深度学习和机器学习的主要区别在于对数据的处理, 机器学习主要通过算法直接进行推断, 而深度学习主要通过神经网络对各种算法进行加权, 然后汇总得出结论. 2. 常用的激活函数: tanh函数relu函数leaky relu函数1.1 深度学习介绍 1.1.1 区别 机器学习的特征工程步骤是要靠手…

Effective Objective-C 2.0学习记录(五)

23.通过委托和数据源协议进行对象间通信 使用委托模式:获取网络数据的类含有一个“委托对象”,在获取完数据后,它会回调这个委托对象。 利用协议机制,很容易就 能以OC代码实现此模式,在图中演示的情况下。可以这样定义…

【Java AWT 图形界面编程】Container 容器总结

文章目录一、AWT 简介二、AWT 核心类继承体系三、Container 容器类子类四、Container 容器常用 API五、Frame 窗口示例六、Panel 示例七、窗口中文乱码处理八、ScrollPane 可滚动容器示例一、AWT 简介 Java 中 使用 AWT 和 Swing 进行 图形界面开发 , AWT 是 抽象窗口工具集 , …

线程安全问题(3)

线程不安全:在多线程的调度情况下,导致出现了一些随机性,随机性是代码中出现了一些BUG,导致我们的线程是不安全的 造成线程不安全的原因: 1)操作系统抢占式执行,线程调度随机,这是万恶之源,我们无能为力 2)…

Web进阶:Day7 响应式、BootStrap、实战演练

Web进阶:Day7 Date: January 10, 2023 Summary: 响应式、BootStrap、实战演练 响应式 媒体查询 目标:能够根据设备宽度的变化,设置差异化样式 媒体特性常用写法 媒体特性常用写法: max-width(从小到大&#xff0…

transformers包介绍——nlp界最顶级的包——可以不用 但不能不知道——python包推荐系列

背景1 现在在AI行业,什么最火?计算机视觉还是自然语言处理?其实不得不说,现在nlp很火。还有人记得上个月很多科技爱好者都在玩的chatgpt么?那个就是nlp技术的一大应用。现在都在觉得AI赚钱,工资高&#xf…

深度学习 12 正则化

1. 对于高方差(过拟合),有以下几种方式: 获取更多的数据,使得训练能够包含所有可能出现的情况 正则化(Regularization) 寻找更合适的网络结构 2. 对于高偏差(欠拟合),有以下几种方式: 扩大网…

【C语言进阶】只看此篇,让你学会动态内存管理

目录 前言 一、为什么存在动态内存分配 二、动态内存函数的介绍 1 、malloc和free 2、 calloc 3 、realloc 三、常见的动态内存错误 四、动态内存管理笔试题 1 题目1: 2 题目2: 3 题目3: 4 题目4: 五、C/C程序的…

5.10回溯法--圆排列问题--排列树

圆排列问题描述 给定n个大小不相等的圆,要将这n个大小不相等的圆排进一个矩形框中,且要求个个圆都与矩形框的最底边相切。要找出最小长度的圆排列。 问题分析 排列排列,解空间是一个排列树。 设开始时,a[n]储存n个圆的半径&…

笔试强训48天——day26

文章目录一. 单选1.在单处理器系统中,如果同时存在有12个进程,则处于就绪队列中的进程数量最多为()2.在系统内存中设置磁盘缓冲区的主要目的是()3.下列选项中,会导致进程从执行态变为就绪态的事…

时间复杂度空间复杂度

算法效率数据结构算法时间复杂度大O的渐进表示法三种时间复杂度几道例题一.简单递归二结合代码来判断时间复杂度空间复杂度我们程序猿开始的时候肯定听了不少的:数据结构和算法,那么阿涛就给大家说说自己的拙见吧.数据结构 数据结构就是我们用来组织数据的方式,比如我们可以把…

JVM-【面试题】-垃圾收集算法+垃圾收集器,以后就不用担心对象那些事了

一、垃圾收集算法在jvm里对可回收的对象在不同的垃圾收集器里,有不同的回收算法,具体的可以分为这四种:分代收集算法、复制算法、标记清除算法、标记整理算法1.1 分代收集算法当前虚拟机的垃圾收集都采用分代收集算法,这种算法没有…

【NI Multisim 14.0操作实例——最小锁存器电路】

目录 序言 🔥1.设置工作环境 🔥2.设置原理图图纸 🔥 3.设置图纸的标题栏 🔥 4. 增加元器件 🔥 5. 放置总线 🔥 6. 添加总线分支 序言 NI Multisim最突出的特点之一就是用户界面友好。它可以使电路…

ELasticSearch监控之Cerebro安装

文章目录安装包下载安装使用点击nodes 查看各节点状态点击rest发送可以发送请求查询数据安装包下载 https://github.com/lmenezes/cerebro/releases/download/v0.9.4/cerebro-0.9.4.tgzgit地址:https://github.com/lmenezes/cerebro 安装 将要包移动到/opt目录解…

Unity 3D 导入三维模型||Unity 3D 动画系统简介(Mecanim)

将三维模型导入 Unity 3D 是游戏开发的第一步。 下面以 3ds Max 为例,演示从三维建模软件中将模型导入 Unity 3D 的过程,具体步骤如下。 在 3ds Max 中创建房子模型。执行 Export → Export 命令导出 fbx 模型。设置保存路径以及文件名。选择默认设置选…

【transformers】tokenizer用法(encode、encode_plus、batch_encode_plus等等)

tranformers中的模型在使用之前需要进行分词和编码,每个模型都会自带分词器(tokenizer),熟悉分词器的使用将会提高模型构建的效率。 string tokens ids 三者转换 string → tokens tokenize(text: str, **kwargs)tokens → strin…

安卓车机系统adb shell cmd 源码原理分析

hi,粉丝朋友们大家好! 上一次视频分享了input专题课中input命令在android 12的更新,因为原来课程是基于android 10 (可以加我扣:2102309716 优惠购买) https://ke.qq.com/course/package/77595?tuin7d4eb3…

联合证券|金融部门开年推出新方案 改善优质房企资产负债状况

当时,努力促进房地产与金融正常循环是金融部门的工作要点之一。记者日前了解到,为遵循落实中心经济工作会议布置,有用防范化解优质头部房企危险,改进财物负债情况,有关部门起草了《改进优质房企财物负债表计划举动计划…

【计算机体系结构基础】流水线异常处理和提高流水线效率的技术(一)

流水线中的异常 异常的来源 外部事件指令执行中的错误数据完整性的问题地址转换异常系统调用陷入需要软件修正的运算 异常可以分为:可恢复异常和不可恢复异常 不可恢复异常:系统硬件出现严重故障,异常处理后系统面临重启。 解决办法&#x…

Spring Boot Apollo监听namespace并更新配置Bean(附源码)

这里是weihubeats,觉得文章不错可以关注公众号小奏技术,文章首发。拒绝营销号,拒绝标题党 背景 如果我们使用的配置中心是apollo的话我们经常会遇到这样的问题,就是动态更新配置Bean 动态更新配置bean 动态更新配置bean其实是很简单的&…