软件测试如何做到充分性测试?

news2024/12/20 15:14:52

目录

1 提前介入测试

2 测试分析,测试用例设计

3 测试用例评审

4 严格按照测试用例执行测试

5 分解需求

6 交叉测试

7 重点功能要及时跟踪进行测试充分性分析


做软件测试要想保质保量,就要做到测试充分,什么是测试充分,就是把所需要覆盖的场景都要覆盖到。如何做到场景全面覆盖,特别是在时间紧任务重的时候?我把我这些年来工作的一点经验总结一下分享给大家,希望对大家有点帮助:

1 提前介入测试

那么什么时候测试介入比较好?在需求明确下来进入开发之前,测试就可以介入了解需求的相关内容了。这块一般有两个阶段:
  第一个阶段是需求澄清阶段,这个阶段就是需求接口人向开发讲解需求的详细要求及实现功能,这个时候测试就可以参与进来一起听,听过之后我们就对这个需求有了一个大概的了解,知道了这个功能的是要做什么,输入输出是什么,为后期了解详细的实现方案做准备。
  第二个阶段是开发实现方案澄清阶段,这个阶段一般是相关的开发人员把需求的功能实现方案和详细逻辑跟需求提出人和接口人确认,我们这个时候参与进来,就可以根据开发讲的实现方案和逻辑了解相关的的内容:比如算法判断逻辑是啥,取值是啥,输入值的类型是啥,取的哪个表哪个字段的值,或者调取那个接口服务,异常输入又是如何处理的,结果体现在哪里等等。
  当然有些小公司是没有给这些阶段的时间的,拿到需求就可能是口头说一下开发就直接实现,不会再次的澄清,这个时候我们怎么办,只有自己主动找开发沟通,遇到与开发理解不一致的时候,还要找产品经理或需求拉口人再次确认,来避免需求不清晰导致的一些不必要的问题,也为我们后期的测试用例编写找到明确的答案。

2 测试分析,测试用例设计

根据前期的了解,接下来我们就是要把这些存在于我们脑海中的信息转化为文字形式列出来,并分析出我们的测试场景。
  为啥要把这些信息转化文字,不根据所想直接列测试场景,因为这些信息存在我们脑海中的很容易忘记,而且不是很清晰,只有通过有章法的梳理信息后,才能形成对我们有用的信息。不知道大家有没有这样的情景,一个需求你看文档或者听需求接口人和开发都讲过了,你也知道是啥了,感觉没啥问题了,可是当你下去写测试用例的时候,你还是会有些地方模糊不清楚。那么把我们了解的信息形成文字,就能很好的帮助我们解决这个问题。
  如何梳理这些信息呢,我一般是按照这样的顺序来的:
1)先分析需求的背景,业务要求。
  把之前了解的需求背景都写出来,遇到不明确的及时询问相关人员,直到明确。比如一个需求的背景是这样的:业务人员在一线作业的时候发现某个模块在一些国家是需要特殊型号的,而在系统订单中默认配置的是另外一个型号,他们希望配置这个国家订单的时候,系统能自动识别出来并把这个模块替换成指定的型号。那我们在写需求背景的时候不仅仅是写上面那段话了,就要把“一些国家”中的国家给明确写出来,就是这些国家是哪几个国家,国家名称是啥,代码是啥,同时模块型号也要明确写出来,替换前的模块是哪个?型号是啥?替换后的模块是啥,型号又是啥?
2)分析需求实现方案和逻辑
  这里就是把我们前期了解到的开发实现方案和逻辑一一罗列出来,有必要的可以用图画出来如开发的实现流程,逻辑判断流程,数据走向等等。就比如上面那个需求,开发的实现方案是应该包括这个国家是从订单哪个信息里面取出来的,需要更换模块型号的国家又是放在哪里的,是怎么取模块型号的,更换后的结果在哪里体现等等。那我们在这个分析模块就要把这些都列出来,并一一明确。
3)分析测试要点,测试要素
  根据前面两项的分析,我们应该很快的就理出我们的测试要点,重点关注项等内容。就说上面这个模块型号更换吧,我们知道了:国家,指定模块型号,更换后的模块型号体现在哪里,都是我们的关注对象,同时我们还应知道这个更换型号对于没有不在指定国家的范围内的,型号是不受影响的。那么这些就是我们的测试要点和要素了。
4)列出测试场景
  根据上面的分析,我们可以把我们所需要测试的场景以表格的形式写出来了。
5)把测试场景转化为测试用例
  到此,我们就可以输出测试用例了,那我们这个用例到底充分与否,结果输出是否正确,我们的理解是否到位呢?接下来我们就要请相关的人员对我们的文档和用例进行一个评审了。

3 测试用例评审

测试用例评审不仅仅评审的是测试用例,还有我们对这个需求的理解和我们的思路,所以在评审的时候我们应该先把我们的测试分析文档讲一下,然后再把我们的测试用例拿出来给大家讲一下,重点讲测试的输入和输出结果。
  这样下来在开发和系统设计人员的帮助下,我们就可以及早发现用例的不足以及我们忽略的测试点,及时补充测试用例,完善测试用例。这个在以前的公司测试用例评审是要求很严的,每个参于评审的人都必须要提出问题点,就是为了避免有些参于评审的人员只参于不评审,导致一些问题遗留到最后。

4 严格按照测试用例执行测试

这一点很重要,为什么这么说呢?因为你测试用例设计的再好,你不按照它来执行,你的测试就不可能做到充分。
  还记得有一次我做好了一个需求的测试用例,评审完去测试的时候,我觉得自己记得差不多了就按自己记的开始测试没有按测试用例一个个的执行,前面测试的很快,问题也不多。等后面回归测试的时候,我就突然发现多出好几个问题,原因就是我没按测试好的测试用例全面覆盖漏测了两个关联点,打此以后,我再也不敢脱离测试用例,自己凭记忆测试了。

5 分解需求

有些需求接到的晚或着手测试的晚,功能又复杂,又要求按时上线,这个时候怎么办?

把需求测试用例完成后,按功能分成几个小功能点,分配给多个组员测试(当然这个在给参与测试的人员之前要把需求功能详细的讲解一下),在测试的过程中要保持经常沟通,做到宁可交叉重复测试也不脱节测试。
  我记得当时有一个web系统的功能,前期的时候因为忙着应对其他紧急的需求,就把它放在一边了,后面提上日程的时候发现留给我的时间不多了,我一个人测试肯定测试不全,这时我就主动找主管沟通,多调两个同事来和我一起测试,然后在两个同事的协助下,才顺利完成了这个功能的测试。

6 交叉测试

对于大的需求或都功能复杂的需求要做到多人交叉测试,这种测试在系统测试的时候就可以进行,以前我所在公司的项目每到系统测试都会进行这样的安排,这样就可以避免到后期回归测试出现更多的问题。

7 重点功能要及时跟踪进行测试充分性分析

对于那些功能复杂,风险性高的项目,我们要在每进行完一轮测试,进行一次测试充分性分析以便及时做出调整。
  有一次我们有一个比较大的改动,而这个改动涉及到了我们这个软件流程中的一个核心点,也就是涉及到的内容比较多,然而留给测试的时间却不是很多只有两周,怎么办呢?组长首先把这个改动按影响到的功能点细化分了一下,分给了三个人进行测试,每天她都跟进统计测试进度,分析问题分布点,跟进问题修改情况,然后再根据这些及时调整测试策略,经过两周紧张的有序的测试,这个功能最终稳当的上线。


以下是我收集到的比较好的学习教程资源,虽然不是什么很值钱的东西,如果你刚好需要,可以评论区,留言【777】直接拿走就好了

各位想获取资料的朋友请点赞 + 评论 + 收藏,三连!

三连之后我会在评论区挨个私信发给你们~

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

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

相关文章

将数组和减半的最少操作次数(力扣)

将数组和减半的最少操作次数 题目描述思路测试代码复杂度测试结果 题目描述 给你一个正整数数组 nums 。每一次操作中,你可以从 nums 中选择 任意 一个数并将它减小到 恰好 一半。(注意,在后续操作中你可以对减半过的数继续执行操作&#xf…

(笔记)深度理解-主成分分析PCA

主成分分析 PCA(Principal Component Analysis),即主成分分析方法,是一种使用最广泛的数据降维算法。PCA的主要思想是将n维特征映射到k维上,这k维是全新的正交特征也被称为主成分,是在原有n维特征的基础上重新构造出来的k维特征。…

蛋白质分子结构设计

paper read 1 Created by: 银晗 张 Created time: May 27, 2023 3:47 PM Tags: Product 补充了解蛋白质的生物学知识学习一下Diffusion的原理 💡 Method & Innovations Framework Summary: first deep learning models to perform antibody sequence-stru…

随笔--更改已经启动中的容器的配置文件

文章目录 docker 容器的配置信息地址修改文件映射 docker 容器的配置信息地址 # 一般在 sudo su cd /cd /var/lib/docker/containers/{容器id}/ # 查看容器的id,CONTAINER ID就是容器id的前部分 docker ps修改文件映射 进入容器的配置文件位置一般包含这些文件 # 先stop容器…

0基础学习VR全景平台篇 第69篇:VR直播-如何设置广告

直播间可以插入轮播广告,并且支持外链跳转,能够有效地提升VR直播活动的转化率。 1、点击,添加广告 2、广告图展现形式分为两种:普通广告和全屏广告,普通广告在非全屏播放的直播间显示,全屏广告在全屏播放的…

特征选择策略:为检测乳腺癌生物标志物寻找新出口

内容一览:microRNA(小分子核糖核酸)是一类短小的单链非编码 RNA 转录体。这些分子在多种恶性肿瘤中呈现失控性生长,因此近年来被诸多研究确定为确诊癌症的可靠的生物标志物 (biomarker)。在多种病理分析中,差异表达分析…

在 “小小容器” WasmEdge 里运行小小羊驼 llama 2

昨天,特斯拉前 AI 总监、OpenAI 联合创始人 Andrej Karpathy 开源了 llama2.c 。 只用 500 行纯 C 语言就能训练和推理 llama 2 模型的框架,没有任何繁杂的 python 依赖。这个项目一推出就受到大家的追捧,24 小时内 GitHub 收获 4000 颗星&am…

AI学习笔记三:编写检测的yolov5测试代码

若该文为原创文章,转载请注明原文出处。 通过detect.py代码测试通过后,阅读detect.py代码发现,有些难以看懂,看得有点蒙蒙的, 所以编写了一个简单的测试程序。 代码如下: import cv2 import numpy as np…

工业自动化编程与数字图像处理技术

编程是计算机领域的基础技能,对于从事软件开发和工程的人来说至关重要。在工业自动化领域,C/C仍然是主流的编程语言,特别是用于工业界面(GUI)编程。工业界面是供车间操作员使用的,使用诸如Halcon或OpenCV等软件单独无法完成项目&a…

mysql 第八章

1.主从复制 主服务器: 从服务器: 检测结果: 2.读写分离 amoeba 机器: 客户端机器: 检测结果: 3.总结 在企业应用中,业务通常数据量都比较大。单台 mysql 在安全性、 高可用性、高并发方面都&am…

走好职业生涯第一步 中科驭数2023校招生培训“芯星计划” 落幕

校招生作为公司发展的新鲜血液,是公司在人才储备和人才梯队建设上的重要投资。近日,中科驭数在北京、武汉两地组织开展了2023年校招生培训项目——“芯星计划”,旨在帮助2023届校招新员工快速了解公司文化、融入驭数团队,顺利迈过…

字节抖音小程序,使用 uniapp 调起内置支付

字节抖音小程序,使用 uniapp 调起内置支付 第一步:提交订单 后端通过抖音预下单接口,提交支付订单信息。 预下单接口_小程序_抖音开放平台预下单接口 提交支付订单信息。 ## 使用限制 无 ## 接口说明 预下单接口需要保证同一app_id下每笔订…

中国剩余定理讲解及例题

凡有所学&#xff0c;皆成性格。 凡有所学&#xff0c;皆成性格。 目录&#x1f352; &#x1f349;中国剩余定理维基百科<font colorgreen>:cherries:形式描述&#xff1a; <font colorred>:pear: 解法:strawberry:<font colorgreen>求解方法&#xff1a;:…

集成学习——Bagging算法和随机森林算法

1、集成学习 集成学习是将多个机器学习的算法结合起来的一种方法&#xff0c;即实现将多个弱学习器通过组成一个整体来实现强学习的效果&#xff0c;俗语里&#xff1a;三个臭皮匠赛过一个诸葛亮。 2、Bagging算法 2.1 Bootstrap自助采样 在样本集D(样本数为m)中进行有放回…

51单片机--LCD1602

LCD1602的介绍 LCD1602是一种字符型液晶显示模块&#xff0c;通常用于嵌入式系统、单片机等领域。它由LCD&#xff08;液晶显示屏&#xff09;、HD44780控制驱动主电路及其扩展驱动电路、少量电阻、电容元件等组成。 LCD1602具有以下特点和功能&#xff1a; 显示能力&#xf…

使用sftp

一、背景 新项目组前端部署方式是Build打包生成dist文件&#xff0c;交由后端部署。后来知道了vscode安装sftp前端可以自行部署。 二、实操 1、vscode安装sftp 2、 配置 ①F1 / ctrlshiftp ②命令行输入sftp -> 选择 sftp: Config ③配置信息介绍 {"name"…

liteflow overall笔记

偶然看到liteflow的介绍&#xff0c;感觉是一个local单机版本的conductor。 核心代码的注释非常好&#xff0c;在我看过的开源代码里面数一数二单元测试完备&#xff0c;要学习用法基本都可以在单元测试看到相关代码核心基于阿里的ElExpress&#xff0c;使用方式值得学习监控稍…

网络编程八股文

文章目录 tcp粘包问题&#xff1f;BIO,NIO,AIO是什么&#xff1f;零拷贝是什么&#xff1f;浏览器发出一个请求到收到响应的具体步骤&#xff1f;select, poll, epoll区别是什么&#xff1f;https是如何保证安全传输的&#xff1f;tcp的三次握手和四次挥手&#xff1a;tcp网络分…

LZ77算法理论

发布时间&#xff1a;2023-07-25 14:58:28 英文介绍文档&#xff1a;https://archive.ph/F4pg7 很短&#xff0c;看一遍10&#xff5e;20分钟应该够了。 1. 算法用到的术语&#xff1a; Input stream 要被压缩的字符序列 Character 输入流中的基本数据元素 Coding position…

RealsenseD455 + ubuntu18.04 + ROS-Melodic的使用

系统&#xff1a;Ubuntu18.04 ros: melodic 相机&#xff1a;intel RealSense D455一、安装依赖和 Realsense SDK sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-key F6E65AC044F831AC80A06380C8B3A55A6F3EFCDE || sudo apt-key adv --keyserver hkp://keyserver…