第六天笔记(设计用例的方法,等价类,边界值,判定表)

news/2024/11/16 3:51:40/文章来源:https://www.cnblogs.com/fujintao/p/18299914

一、软件测试中术语

1.动态测试(dynamic testing):通过运行软件的组件或 系统来测试软件

例如:一辆汽车发动并行使测试

2.静态测试(static testing):对组件的规格说明书进行 评审,对静态代码进行走查

例如:一辆汽车为发动未行驶,查看外观、颜色、组成部分

3.正式评审(formal review):对评审过程及需求文档的 一种特定评审,比如:用例评审

a、组内评审(项目组中的成员:产品,开发,测试)

b、交叉评审(测试同事成员:测试a、测试b,测试c)

4、评审员(reviewer):参与评审的人

5、度量:测量所使用的方法或标准 (准入,准出)

6.记录员:记录评审会议上的会议纪要

7.技术评审(Technical Review):同行间对技术进行的评审,目的是技术实现达成共识

8.走查(Walkthrough):由文档作者逐步陈述文档内容,以收集信 息并对内容达成一致

9.复杂性(complexity):系统或组件的设计或内部结构比较复杂, 导致难以理解,维护或验证的程度

10.圈复杂度(Cycloramic complexity):程序中独立路径的数量。可 以衡量一个组件模块的判定结构的复杂程度。

例如:软件复杂程度

11.控制流(Control Flow):执行组件或系统的一系列顺序的路径

12.数据流(Data Flow):表示数据对象的顺利或状态发生变化的过程

例如:状态变法:待支付》已支付,代发货》已发货,代签收

13.控制流图

控制流图(CFG,Controlflowgraph)也叫控制流程图,是一个过程或程序的抽象表现。
14.圈复杂度

程序中独立路径的数量,可以衡量 一个组件模块的判定结构的复杂程 度。
三种计算方式:
a.圈复杂=区域数
b.圈复杂度=边数-节点数+2
c.圈复杂度=判定节点+1
案例:
if (x>100&&y>500) then
score=score+1
else if (x>=1000||z>5000)then
score=score+2

讲解:

a.圈复杂=区域数
v=3 (两块区域+1块外面区域)
b.圈复杂度=边数-节点数+2
v=7-6+2=3
c.圈复杂度=判定节点+1
v=2+1=3
案例:
a.圈复杂=区域数

b.圈复杂度=边数-节点数+2

c.圈复杂度=判定节点+1

比较:

if (x>100&&y>500) then
score=score+1
else if (x>=1000||z>5000) then
score=score+2
else
score=score+3
end if

用例设计方法之等价类

一、黑盒设计测试用例方法

1、等价类,边界值,判定表,因果图,正交表,场景 法,状态迁移法

2、错误推测法,异常分析法,随机测试

二、白盒测试设计用例方法

1、语句覆盖

2、判断覆盖

3、条件覆盖

4、判断条件覆盖

5、路径覆盖(独立路径覆盖,z路径)

=========================================

等价类:

定义:指某个输入域的集合,在集合中各个输 入的条件都是等效的。

有效等价类:对程序规格说明有意义的、合理 的输入数据

案例:

手机号:(1)11位 (2)纯数字

有效用例:15949613302

无效等价类:对程序规格说明无意义的、不合 理的输入数据

案例:

手机号:(1)11位 (2)纯数字

无效用例1:12位 159496133022 比手机位数多1

无效用例2:10位 15949613302 比手机位数少1

无效用例3:纯数字 1594961330A 非纯数字

等价类设计用例覆盖的原则:
(1)每个用例尽可能多的覆盖多个有效的等价类
(2)每个用例只能覆盖一个无效等价类
案例:
案例-练习:
现有一个档案管理系统,容许用户通过输入年月对档案文件进行 检索,系统对查询条件年月的输入限定为1990年1月~2049年12月,并规定:日期由6位数字字符组成,前4位表示年,后2位表示月

等价类划分的设计用例思路:

  1. 找输入条件
  2. 为每个输入条件找有效、无效等价类
  3. 为每个等价类编号
  4. 用最少的用例覆盖最多的有效等价类
  5. 每一个无效等价类都是一个用例
  6. 并非所有有效等价类都有无效
  7. 等价类的覆盖可以重复覆盖

常见的能够划分等价类的地方:

  1. 数值范围
  2. 重复次数
  3. 字符串长度
  4. 字符串组中字符的个数
  5. 文件命名
  6. 文件大小
  7. 屏幕的颜色种类
  8. 超时时间

等价类的优缺点
优点:是考虑了单个输入域的各类情况, 避免了盲目或随机选取输入数据的不完整 性和覆盖的不稳定性。
缺点:方法虽然简单易用,但是没有对组 合情况进行充分的考虑。需要结合其他测 试用例设
计的方法进行补充。比如边界值
练习1:

条件:

条件1(大于等于5位)

条件2(小于等于13位)

条件3(纯数字)

有效:812462278 满足1,2,3

无效1:1234 小于5位

无效2:12345678901234 大于13位

无效3:1234s56

无效4:aaaaaaa

无效5:!@@####

无效6: 空或null

练习2:
银行卡: 16位 ----18位 纯数字或字母组合
点评:
(1)

练习3:微信红包红包金额:

条件

条件1:金额0.01-200

条件2:纯数字

条件3:小数位数保留两位

有效等价类:

1、20.22 1,2,3

无效等价类:

1、0.00 小于最小金额

2、200.01 大于最大金额

3、12.1a 非纯数字

4、12.001 保留三位小数

边界值

一、边界点定义:

(1)边界上的点

(2)离点:离上点最近的点(即上点左右两边最邻近的点)

(3)内点:在域范围内的点:

案例1:5-13位
闭区间
上点:5,13
离点:4,14
内点:8(6,7,8,9,10,11,12)
测试: 5(最小值),13(最大值),4(小于最小值),14(大于最大值),8中间值
开区间:
上点:5,13
离点:6,12
内点:8
测试:5(最小值),13(最大值) ,6(最小值大1),12(最大值小1),8(中间值)
练习1:根据实际场景
11位手机号
测试:
11位 (手机固定位数)
12位:12----五无上限 (固定位数大1)
10位: 1-10位(固定位数小1)
0位:为空

练习2:单人红包金额0.01-200元
测试:0.01(最小值) ,200(最大值),0.00(小于最小值),200.01(大于最大值),1(中间值0.02-199.99)
(4)
边界条件分析:

  1. 输入条件明确了一个值的取值范围,或规定了值的个数
  2. 输入条件明确了一个有序集合
    (5)
    边界值分析原则
  3. 如果输入(输出)条件规定了取值范围,则应该 以该范围的边界内及边界附近的值作为测试用例
  4. 如果输入(输出)条件规定了值的个数,则用最 大个数,最小个数,比最小个数少一,比大个 数多一的数作为测试数据
  5. 如果程序规格说明中提到的输入或输出是一个有 序集合,应该注意选取有序集合的第一个和最后 一个元素作为测试数据

案例:
atm 输入框金额100-5000
测试:上点 100 5000
内点:101-4999
离点:99, 5001
备注:边界值是发现bug能力最强的一种测试方法

判定表
1、判定表定义:分析和表达多逻辑条件下的执行不同操作的情况
2、作用:对组合情况设计用例
利用判定表将复杂的问题按照各种可能的 情况全部列举出来,能针对不同逻辑条件 的组合值,
分别执行不同的操作。
3、组成部分:
1)条件桩(condition stub):列出问题的 所有条件(通常条件次序无关紧要)。
2)条件项(condition entry):列出针对 它条件的取值(所有情况下的真假值)
3)动作桩(action stub):列出问题规定 可采取的动作(顺序无约束)。
4)动作项(action entry):列出条件各种情况的应采取的 动作

案例1:
对功率大于50马力的机器、维修记录不全或已运行10年以上的机器,应给予优先的维修处理……”。

理解:1、 功率大于50马力的机器 和维修记录不全(优先)
2、已运行10年以上的机器(优先)
备注:条件3个 2的3次方=8次, 8次可以覆盖所有的组合情况

a.初始化判定表

b.简化后的判定表

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

上网记录20240713

模块化医学图像处理可视化软件 https://www.mevislab.de/ https://github.com/MeVisLab MeVisLab Help Resources https://mevislabdownloads.mevis.de/docs/current/MeVisLab/Resources/Documentation/Publish/index.htmlhttps://www.kitware.com/ Open Inventor The Invento…

比赛获奖的武林秘籍:07 一文速通电子设计大赛,电子人必看的获奖秘籍

本文主要介绍了全国大学生电子设计大赛的含义、比赛形式、组队技巧,结合自身经历讲解了备赛指南,同时对往年题目进行了分析和总结。比赛获奖的武林秘籍:07 一文速通电子设计大赛,电子人必看的获奖秘籍 摘要 本文主要介绍了全国大学生电子设计大赛的含义、比赛形式、组队技巧…

常错过手机的重要消息的帅哥靓女,看过来

你是不是手机里有许多未读消息,许多“小红点”,系统通知里有很多通知,久而久之你已习惯并麻木了?你只在自己需要的时候主动去找,而对于推送的信息一概不理。有时也有朋友向你抱怨发给你的信息你久久不回。或者反过来,你经常去看推送的消息,但大多是不太重要的,是广告,…

持续学习中避免灾难性遗忘的Elastic Weight Consolidation Loss数学原理及代码实现

训练人工神经网络最重要的挑战之一是灾难性遗忘。神经网络的灾难性遗忘(catastrophic forgetting)是指在神经网络学习新任务时,可能会忘记之前学习的任务。这种现象特别常见于传统的反向传播算法和深度学习模型中。主要原因是网络在学习新数据时,会调整权重以适应新任务,这…

Burp Suite Professional 2024.6 for macOS x64 ARM64 - 领先的 Web 渗透测试软件

Burp Suite Professional 2024.6 for macOS x64 & ARM64 - 领先的 Web 渗透测试软件Burp Suite Professional 2024.6 for macOS x64 & ARM64 - 领先的 Web 渗透测试软件 世界排名第一的 Web 渗透测试工具包 请访问原文链接:https://sysin.org/blog/burp-suite-pro-mac…

Burp Suite Professional 2024.6 (macOS, Linux, Windows) - Web 应用安全、测试和扫描

Burp Suite Professional 2024.6 (macOS, Linux, Windows) - Web 应用安全、测试和扫描Burp Suite Professional 2024.6 (macOS, Linux, Windows) - Web 应用安全、测试和扫描 Burp Suite Professional, Test, find, and exploit vulnerabilities. 请访问原文链接:https://sys…

Vs Code Batch-runner 插件设置

vs code 运行npm run build 报错解决 重新设置batch-runner插件 或者用powershell插件跑