软件测试(二)--测试用例

一、什么是用例:

用例就是用户使用案例的简称。以手机用例为例:
1.是否能开机:打开手机按下电源键3秒,看是否能开机。
2.验证内存:打开手机设置查看内存是否为64G.
3.验证屏幕:打开手机在白屏背景下检查屏幕是否有黑点。
4.检查运行速度:打开手机下载吃鸡游戏是否运行流畅。

二、什么是测试用例:

测试用例就是为测试项目设计的执行文档。测试按照文档走。
测试用例的作用:
1、防止漏测;
2、实施测试的标准。

用例设计编写格式。用例执行时八大要素

在这里插入图片描述
1、用例编号:项目_模块_编号
2、用例标题:预期结果(测试点)
3、模块、项目:所属项目或模块
4、优先级:表示用例的重要程度或者影响力P0~P4(P0最高)用户使用率最高的功能模块是优先级最高的
5、前置条件:要执行此条用例,有哪些前置操作
6、测试步骤:描述操作步骤
7、测试数据:操作的数据,没有的话可以为空
8、预期期望:期望达到的结果

三、练习:

根据以下测试点编写用例:
需求:
QQ登录(4条)1、账号为空,2、账号未注册,3、密码为空,4、密码错误
在这里插入图片描述

四、测试用例应该怎么去设计?

1.能对穷举场景设计测试点

方法:等价类划分法

说明:
在所有测试数据中,具有某种共同特征的数据集合进行划分
分类:
1.有效等价类:满足需求的数据集合2.无效等价类:不满足需求的数据集合
步骤:
1.明确需求2.确定有效和无效等价类3.提取数据编写测试用例
适用场景:
针对:需要有大量数据测试输入,但是没法穷举测试的地方,常见输入框、下拉列表、单选复选框。
典型代表:页面的输入框类测试

案例:需求:

验证QQ账号的合法性,要求:6~10位自然数
在这里插入图片描述

案例:需求:

验证某城市电话号正确性,要求;1、区号:空或者是三位数2、前缀码:非“0”且非“1”开头的三位数字3、后缀码:四位数字
在这里插入图片描述

2.对限定边界规则设计测试点

方法:边界值分析法

边界范围节点:
选取正好等于、刚好大于、刚好小于边界的值作为测试数据:
上点:边界上的点(正好等于);
离点:距离上点最近的点(刚好大于或刚好小于);
内点:范围内的点(区间范围内的数据一般取居中方便不与离点混淆)
注意:
1.以后看到边界范围的按照位数来说用例最多设计7条
2.边界值能解决位数限制问题,但不能解决类型问题。(要结合等价类)
在这里插入图片描述

应用设计步骤:

1、明确需求,
2、确定有效和无效的等价类(非数字要考虑),
3、确定边界范围值,
4、提取数据编写测试用例

案例:

需求:通过边界值验证标题长度的合法性;
要求:标题长度大于0,小于等于30个字符。(其实1,和29等价与内点15,故而1和29可以省略,以此优化,因此7条用例可以优化为5条)
在这里插入图片描述

适用场景:

1.在等价类的基础上针对有边界范围的测试数据输入的地方(重点关注边界)
2.常见词语描述:大小,尺寸,重量,最大,最小,至多,至少等修饰词。
3.典型代表:有边界范围的输入框类测试。
强调:单个输入框,常用的方式是边界+等价类。

3.能对多条件依赖关系进行设计测试点

方法:判定表法

判定表法的引入,是用来解决我们有条件依赖关系的目标

判定表法说明:

1.等价类边界值分析法主要关注单个输入条件的测试
2.并未考虑输入条件之间的各种组合、输入条件与输出结果之间有相互的制约关系的测试。

判定表定义及组成部分

规则:
1、判定表中贯穿条件项和动作项的一列就是一条规则
2、假设有n个条件,每个条件的取值有两个(0,1)全组合有2的n次方种规则。
定义:
是一种以表格形式表达多条件逻辑判断的工具;
组成:
1、条件桩:列出问题中所有条件,次序无关紧要;
2、动作桩:列出问题中可能采取的操作,操作的排列顺序没有约束;
3、条件项:列出条件对应的取值,所有可能情况下的真假;
4、动作项:列出条件项在各种取值情况下应采取的动作结果。

案例:

验证“若用户欠费或关机,则不允许主机被叫”功能的测试
在这里插入图片描述

判定表法设计用例步骤

1.明确需求
2.画出判定表;
1)列出条件桩和动作桩
2)填写条件项,对条件项进行组合
3)根据条件项的组合确定动作项
4)简化、合并相似规则(有相同的动作)
3.根据规则编写测试用例

案例

在这里插入图片描述

适用场景:

有多个输入条件,多个输出结果,输入条件之间有组合关系,输入条件和输出结果之间有依赖或制约关系;判定表一般适用于条件组合数量较少的情况(比如4个条件以下)

4.能对项目业务进行设计测试点

方法:场景法

(测试之初先测业务,保证业务能跑通再去测别的,不然测试将没有意义)

流程图:

使用标准图形和箭头来表示程序或业务的走向,正常情况下由产品人员、开发人员画。

流程图对测试人员有什么作用?

1.能够看懂流程图,设计业务用例
2.当需求文档信息不全时,能够根据需求,梳理出流程
网页版工具:https://processon.com/windows
工具:visio
业务测试覆盖:重点
1.覆盖业务测试,需要使用流程图;
2.测试项目之前先测试业务整个可通再测试单功能单模块。
作用:梳理业务用例
在这里插入图片描述

介绍:

说明:
场景法也可以叫流程图法,是用流程图描述用户的使用场景,然后通过覆盖流程路径来设计测试用例
意义:
1.用户使用角度:用户平时使用的不是单个功能,而是多个功能组合起来进行使用;
2.测试人员角度:平时测试的都是单个功能点进行测试,容易忽略多个功能的组合测试。

使用场景:

根据实际场景,来测试业务用例,可以使用场景法

案例

在这里插入图片描述
有流程图开发才能把逻辑判断清楚,测试才能测。左边那条用例叫做冒烟测试用例:也就是上一步具不具备可测性,可以才能进入下一个关卡
在这里插入图片描述
在这里插入图片描述

错误推测法

介绍:

定义:
通过经验推测系统可能出现的问题;
思想:
根据经验列举出可能出现的清单,根据清单分析问题可能原因,推测发现缺陷;
场景:
1.时间紧任务量大时,根据之前项目类似经验找出易出错模块重点测试。
2.实践宽裕通过该方法列出之前出现问题较多的模块再次测试。
问:时间紧,任务量大,人手少怎么保证把这个项目测完?这更多考研的时经验和能力以及分清主次原因,答:时间紧任务量大,我就不会去写用例,我会跟产品人员沟通完确定那些是重要业务,把测试点列好,先验证主要业务再去验证主要的模块的正向再逆向,按照时间节点走,以此类推,时间不够我将加班。用例可以在后期去补。
当所有用例都测完,并且bug都修复完了,离上线还有几个小时,这个期间你可以以你的经验去测试(覆盖)主要业务中未测到的功能,你去验证,这个时候用到错误推荐法才是靠谱的

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【MySQL】数据操作语句(DML)

👦个人主页:Weraphael ✍🏻作者简介:目前学习计网、mysql和算法 ✈️专栏:MySQL学习 🐋 希望大家多多支持,咱一起进步!😁 如果文章对你有帮助的话 欢迎 评论&#x1f4ac…

LeetCode 1017. 负二进制转换

解题思路 相关代码 class Solution {public String baseNeg2(int n) {if(n0) return "0";String s"";while(n!0)if(Math.abs(n)%20){nn/(-2);ss0;}else{ss1; n (n-1)/(-2);}String t reverse(s);return t;}public String reverse(String s){Str…

大广赛车机主体设计实践指南:必备技能速成攻略解读!

车机主体设计是什么 汽车作为代步工具距今已有 130 多年的历史。目前,在视觉范围内如此关注车载 HMI 的历史也只是近十年的事情,因为在过去,人们最注重的还是汽车技术的发展。但随着以交通安全为主的自动驾驶技术的不断发展,智能…

【nginx】使用nginx部署https协议

一、客户有证书提供 客户有证书的,或者有域名申请了免费证书的,直接根据下面的第5步骤,配置nginx即可。 二、 自己生成证书 1. 安装openssl-Win64 OpenSSL v3.1.1 Light 附下载地址 Win32/Win64 OpenSSL Installer for Windows - Shinin…

网站统计中的数据收集原理及实现

网站数据统计分析工具是网站站长和运营人员经常使用的一种工具,比较常用的有谷歌分析、百度统计和腾讯分析等等。所有这些统计分析工具的第一步都是网站访问数据的收集。目前主流的数据收集方式基本都是基于javascript的。本文将简要分析这种数据收集的原理&#xf…

宏集PLC如何为楼宇自动化行业提供空调、供暖与通风的解决方案?

一、应用背景 楼宇自动化行业是通过将先进的技术和系统应用于建筑物中,以提高其运营效率、舒适度和能源利用效率的行业,其目标是使建筑物能够自动监控、调节和控制各种设备和系统,包括照明系统、空调系统、安全系统、通风系统、电力供应系统…

建模实例评点(2)领域类图-食谱

1 00:00:00,290 --> 00:00:04,120 这是之前我们给一个用户 2 00:00:04,130 --> 00:00:05,360 给他出食谱的 3 00:00:05,370 --> 00:00:06,480 这样做的一个 4 00:00:06,650 --> 00:00:08,000 你认为你系统最重要的 5 00:00:08,010 --> 00:00:09,360 一个核心…

计算机网络 实验指导 实验8

三层交换机的访问控制 1.实验拓扑图: 名称接口IP地址网关Switch AF0/1192.168.1.1/24F0/2172.1.1.1/24Switch BF0/1192.168.1.2/24F0/2172.2.2.1/24PC1172.1.1.2/24172.1.1.1PC2172.1.1.3/24172.1.1.1PC3172.2.2.2/24172.2.2.1PC4172.2.2.3/24172.2.2.1 2.实验目的…

支付宝会员签到领取积分

一、背景 跟一位喜欢薅羊毛的好友聊天,说现在好多app上的积分能兑换实物,就是需要每天自己去点开app签到,app太多签不过来或者有的时候会忘记签到,虽然流程不复杂,但要是有款工具每天自动签到就好了。 我给他介绍了一…

市场首款!华邦电子发布内置PQC算法的闪存产品

3月27日,全球领先的半导体内存解决方案供应商华邦电子股份有限公司推出TrustME Secure Flash W77Q系列的最新扩展,包括256Mb、512Mb和1Gb器件。 这些突破性的安全闪存设备是市场上首款针对后量子密码学(PQC)实施Leighton-Micali签…

nginx支持的多种负载均衡策略

目录 1.轮询(默认) 2. ip_hash 3. 加权轮询(weight) 4. fair(第三方) 5. 最少连接(least_conn) 1.轮询(默认) 将请求依次分配给每个服务器,确…

Linux:IO多路转接之poll

文章目录 select的缺点pollstruct pollfd解决缺点的方式 代码实现 本篇总结的是poll的相关内容,在总结poll的内容前,先回顾一下select的缺点 select的缺点 select的缺点也比较明显 等待的fd是有上限的,在我们当前这个版本来说,…

信号处理之(文件批处理+小波分解+波形图的生成)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、前期准备工作之数据自动读取二、前期准备工作之信号分解(小波分解)三、前期准备工作之数据可视化(波形图展示&#xff0…

Redis的配置文件详解

单位:Redis配置对大小写不敏感! 注意这里:任何写法都可,不区分大小写。 units are case insensitive so 1GB 1Gb 1gB are all the same.包含:搭建Redis集群时,可以使用includes包含其他配置文件网络&…

个推助力小米汽车APP实现智能用户触达,打造智能出行新体验

4月3日,小米SU7首批交付仪式在北京亦庄的小米汽车工厂总装车间举行,全国28城交付中心也同步开启首批交付。随着小米SU7系列汽车的正式发售和交付,小米汽车APP迎来了用户体量的爆发式增长。 小米汽车APP是小米汽车官方推出的手机应用&#xff…

大型语言模型(LLMs)面试常见问题解析

概述 这篇文章[1]是关于大型语言模型(LLMs)的面试问题和答案,旨在帮助读者准备相关职位的面试。 token? 在大型语言模型中,token 指的是什么? 分词(Tokenization):可以将…

力扣热题100_链表_138_随机链表的复制

文章目录 题目链接解题思路解题代码 题目链接 138. 随机链表的复制 给你一个长度为 n 的链表,每个节点包含一个额外增加的随机指针 random ,该指针可以指向链表中的任何节点或空节点。 构造这个链表的 深拷贝。 深拷贝应该正好由 n 个 全新 节点组成&a…

事件时间+时间窗口,最后一个窗口不执行问题踩坑与源码分析

事件时间时间窗口,最后一个窗口不执行问题踩坑与源码分析 1. 结论 在使用事件时间和时间窗口的过程中,当最后一个事件的事件时间未达到时间窗口的最大时间,窗口不会触发。 举例说明,在按小时的滚动窗口中,假设当前时…

开启虚拟机时出现此主机支持 Intel VT-x,但 Intel VT-x 处于禁用状态怎么解决

问题描述 虚拟机安装完成后,点击开启此虚拟机弹出系统提示 原因分析: Intel VT-x 处于禁用状态,需要开启。 解决方案: 以联系小新笔记本电脑为例,进入BIOS界面,将Intel Virtual Technology设置成Enabl…

STL--迭代器的介绍

一.迭代器介绍🍗 迭代器是 C 标准模板库(STL)中的一个重要概念。简单来说,迭代器就像是一个指针,用于访问和遍历容器中的元素(比如数组、链表、集合等)。迭代器提供了一种统一的方法来访问容器…