软件测试流程图案例
软件测试优秀实践案例

软件测试优秀实践案例今天我要给你们讲讲我在软件测试中遇到的一个超酷的案例。
那时候,我们接到一个任务,要对一个即将上线的电商APP进行测试。
这个APP 就像一个装满宝藏的大盒子,但在打开给顾客之前,得确保里面没有“定时炸弹”。
一、测试前的准备——武装到牙齿。
我们测试团队就像一群超级侦探,首先是了解这个APP的各种功能。
从用户注册登录,到商品搜索、查看详情、加入购物车、下单支付,再到售后退换货,每一个环节都不能放过。
我们收集了所有能找到的需求文档,像捧着武功秘籍一样仔细研读,还和开发团队的小伙伴们围坐在一起,听他们眉飞色舞地讲述这个APP背后的设计思路和各种技术实现的弯弯绕绕。
这就好比我们要先知道宝藏盒子的构造图,才能更好地找里面的问题嘛。
然后呢,我们开始准备测试环境。
这可就像是给我们的侦探工作搭建一个专门的“调查基地”。
我们模拟了各种可能的设备环境,从大屏的平板电脑,到不同型号、不同操作系统版本的手机,确保这个APP在各种设备上都能正常运行。
这时候的我们,就像是一群要去不同战场作战的士兵,要把装备调整到最佳状态。
二、测试过程——不放过任何蛛丝马迹。
1. 功能测试——像个挑刺儿的顾客。
注册登录环节就像是APP的大门,要是这关过不去,后面的宝藏可就看都看不到了。
我们尝试了各种输入,正常的用户名和密码、超长的字符、特殊字符,甚至还故意输错验证码,就想看这个大门会不会被我们轻易攻破。
结果还真发现了一些小问题,比如说密码长度限制没有明确提示,导致用户输入很长密码后提交失败却不知道为什么。
在商品搜索功能上,我们就像一群挑剔的购物者。
我们输入各种关键词,有热门的商品名称、模糊的描述,甚至是错别字。
有一次,我们输入一个商品的别名,搜索结果竟然是空白,这可不行啊。
顾客要是找不到自己想要的东西,就会气呼呼地离开这个“宝藏盒子”的。
购物车功能也是重点关注对象。
我们不停地添加、删除商品,修改商品数量,还同时添加不同类型的促销商品。
软件测试流程图案例

软件测试流程图案例在线购物场景测试:第一步:确定基本流和备选流第二步:确定场景场景流的组合场景1—成功购物基本流场景2---账号不存在基本流备选流1 场景3---账号或密码错误基本流备选流2 场景4---余额不足基本流备选流3 场景5---账号没有钱基本流备选流4第三步:设计用例(v:有效;I:无效;n/a:不相干)输入用例场景/条件预期结果编号账号密码余额1:成功购物成功购物 1 V V V2:账号不存在提示账号不存在 2 I n/a n/a3:账号或密码错误(账提示账号或密码错误,返回到3 V I n/a 号正确,密码错误) 基本流步骤33:账号或密码错误(账提示账号或密码错误,返回到4 I V n/a 号错误,密码正确) 基本流步骤3提示账号余额不足请充值,充4:余额不足 5 V V I 值后返回到基本流步骤4 提示用户绑定银行卡或充值,5:账号没有钱 6 V V I 充值后返回到基本流步骤4第四步:设计数据,填入用例表(前置条件:所购商品价格150元) 假设Sue是注册用户,密码1s2,余额200;Jim未注册用户;Sun是注册用户,密码1234;Van是注册用户,密码1v2,账号余额1;Tom是注册用户,密码123,余额为0;用例输入场景/条件预期结果编号账号密码余额1:成功购物成功购物 1 Sue 1s2 2002:账号不存在提示账号不存在 2 Jim -- --3:账号或密码错误(账提示账号或密码错误,返回3 Sun 12345678 -- 号正确,密码错误) 到基本流步骤33:账号或密码错误(账提示账号或密码错误,返回4 Sunny 1234 -- 号错误,密码正确) 到基本流步骤3提示账号余额不足请充值,4:余额不足 5 Van 1v2 1 充值后返回到基本流步骤4课堂练习:旅馆住宿系统房间网上预订业务• 需求:游客访问网站进行网上房间预订操作,选择合适的房间后,进行在线预订;此时,需使用个人账号登录系统;待登录成功后,进行订金支付(订金额为1天的房款);支付成功后,生成房间预订单,完成整个房间预订流程。
测试流程图

Level 3
工程得到很好地表现和理解,被描述成标准, 规程,关键和方法。 作为3级基础的组织标准过程集已经简历和不 断改进。 2,3级的区别在于标准,过程和规程的范围 3级比2级的描述更具体和更严格
Level 4
使用统计和量化技术进行控制 建立了质量和过程性能的量化目标,作为过程管理 的准则 收集了过程性能的详细度量,进行统计分析 质量和过程性能度量数据组成组织的度量库,来支 持将来的基于事实的决策 3,4级的区别在于过程性能的可预测性。
同行评审
.评审的输入 --待评审的文档,代码 --《XXX评审检查表》 .评审的输出 --《评审报告》 -- 《评审过程检查表》
正确看待文档
.文档是所有事情能够继承的保证 .如果认为不必要,多一分也是多,如果认为 必要,多少都不够 .文档是一个人水平高低的体现 .需要提高每个人的写作能力,练好内功
CMM2: 可重复性 KPA: 软件配置管理
软件质量保证 子合同管理
Level 2
软件项目跟踪和监控 软件项目计划 需求管理
配置管理
1.定义并文档化配置项的功能和物理属性 2.控制这些属性的变更 3.记录和报告变更处理结果和实施状态 4.遵从制定的需求进行验证
同行评审
为什么进行评审? .促进文档化,提升可读性,易理解性等 .查找错误,收集建议 .扩散知识,产生后备力量 评审什么? .项目中的一系列计划 .项目各阶段的输出:文档,代码等 谁来评审? 项目组成员,PPQA,上级领导,客户等
程序执行的路径是:a b d
该测试用例虽然覆盖了可执行语句,但是并不能检查判断逻 辑是否有问题,例如在第一个判断中把&&错误的写成||,上 面的测试用例仍然可以覆盖所有的执行语句。可以说语句覆 盖率是最弱的逻辑覆盖准则
软件测试缺陷管理流程图

缺陷管理流程图是为了有效的跟踪,管理bug的处理情况,指导测试团队和开发人员有效的处理相关的bug。
不同角色的人,对bug处理的权限不一样,我们需要借助类似缺陷管理工具比如:QC进行实施。
下面就不同角色的人主要的只能进行简单说明:
测试人员:提交bug,并对修复的bug进行审核;
测试组长:审核bug,并将bug提交给开发组长;
开发组长:将确认正确的bug分配给相应的开发人员;
开发人员:修复开发组长分配的bug。
具体的测试流程,请参见图1 缺陷管理流程图:
每个状态表示的具体含义说明如下:
不断的总结,才能不断的提高;不断的思考,才能不断的进步!。
流程图visio介绍和实战案例

C
D
用Visio制作技术路线图的基本流程
1.向工作区内拖入形状; 2.调整形状的大小、位置; 3.双击形状,可进入文字编辑状态,输入文本; 4.另外需要输入文本的,通过插入文本框实现; 5.利用连接线,将各个基本形状连接到一起; 6.设置连接线、基本形状的样式,最终成图。
添加图形
形状,是Visio的核心部件,图形面板在软件左侧,可用鼠标点 选拖动,将所需的图形拖放到工作区内。
(五)运用时机: • 1.本结构是二元选择结构变化的,流程依据选择或决策结果,择一进行不同处理程序。 • 2.选择或决策结果路径名称,可用不同文字,来叙明不同路径之处理程序。
流程图结构图说明——重复结构(一)
3.1 REPEAT-UNTIL结构
(一)图形:
(一)实例:
(三)意义:处理程序循序进行。 (四)语法:DO处理动作一 THEN DO处
1. 顺序结构 2.选择结构 2.1二元选择结构 2.2多重选择结构 3.重复结构 3.1. REPEAT-UNTIL结构 3.2. DO-WHILE结构
1. Do vs Donnot业务流程图注意事项
2. 案例:如何画一个简单流程图?
1. 打开Visio 2. 模版类型选择“流程
图” 3. 选择“跨职能流程图”
案例:如何画一个简单流程图?
1. 选择“垂直” 2. 带区的数值:输入2 3. 点击“确定”
案例:如何画一个简单流程图?
1. 点击“基本流程图形状” 2. 选择“终结符”点击鼠
标拖入绘画窗格
案例:如何画一个简单流程图?
2.本重复结构是先判断是否成立,再判执行程序。
办理交接手续
Do vs Donnot业 务流程图注意事项
软件测试案例-白盒测试覆盖案例

测试用例 通过路径
条件取值
x=4、y=6、z=5 abd
T1、T2、T3、T4
覆盖分支 bd
x=2、y=5、z=11 ace
-T1、-T2、-T3、- ce T4
分支条件覆盖从表面来看,它测试了所有条件的取值,
但是实际上某些条件掩盖了另一些条件。例如对于条件表达 式(x>3)&&(z<10)来说,必须两个条件都满足才能确定表达 式为真。如果(x>3)为假则一般的编译器不在判断是否 z<10了。对于第二个表达式(x= =4)||(y>5)来说,若 x==4测试结果为真,就认为表达式的结果为真,这时不再检 查(y>5)条件了。因此,采用分支条件覆盖,逻辑表达式 中的错误不一定能够查出来了。
ace
-T1、-T2、-T3、-T4 4和8
上面的测试用例覆盖了所有条件的可能取值的组合,覆 盖了所有判断的可取分支,但是却丢失了一条路径abe。
路径测试:
路径测试就是设计足够多的测试用例,覆盖被测试对象 中的所有可能路径。
在上面的测试用例中再添加一个测试用例则可对程序进 行了全部的路径覆盖。
测试用例 x=4、y=6、z=5 x=4、y=5、z=15 x=2、y=6、z=15 x=5、y=6、z=5
测试用例的输入为: { x=4、y=5、z=5} { x=2、y=5、z=5}
上面的两个测试用例虽然能够满足条件覆盖的要求,但 是也不能对判断条件进行检查,例如把第二个条件y>5错误 的写成y<5,、上面的测试用例同样满足了分支覆盖。
条件覆盖
条件覆盖就是设计若干个测试用例,运行被测试对象, 使得程序中每个判断的每个条件的可能取值至少执行一次。
软件测试案例分析-案例1:FUN-003

软件测试案例分析-案例1:FUN-003FUN-003,功能名称:配置指定子目录检索层次数1功能需求规格表1.4 配置指定子目录检索层次数(SRS-FUN-003)2函数规格设计(部分:只针对后面的测试)2.1LLD_002_FUN_003 BOOL AddDirLevel(char*Dir,int lev)添加一个节点功能:该接口用于给链表g_DirRoot接口原型:3单元测试计划3.1测试策略采用独立的单元测试策略,通过设计相应的驱动和桩的方法来测试被测函数。
在选择被测对象时,根据对象的规模和复杂度进行判定。
对任何规模小于等于20非空非注行代码且循环复杂度小于等于3的函数不进行单元测试,对其他函数都进行单元测试。
3.2测试对象基本信息4单元测试设计4.2FUN_003的测试设计规格4.2.1基本信息功能对应:功能FUN_003的测试规格,即AddDirLevel的测试设计规格单元测试标识符:UT_TD_002_0014.2.2单元测试的被测特性1.输入目录名有错误时,反馈错误信息:2.输入目录检索层次有错误时,反馈错误信息;3.输入参数合法,并且要设置的目录已经被设置过;4.输入参数合法,将一个节点正确添加到g_DirRoot中。
4.2.3测试方法需要对IsDirInLinks进行打桩,在测试第三个特性的时候,让其返回任意一个指定的指针,结果检测该指针指向的节点的目录检索层次是否被设为目标值。
IsDirInLinks返回指针的正确性不在这里验证,而是在IsDirInLinks的单元测试中验证。
目录名参数的等价类划分考虑空和非空。
对非空情况,又可以划分长度为0,1~250,>250三种情况,使用边界值方法抽取数据。
对于目录检索层次参数可以考虑:划分等价类<-1,-1~80,>80,使用边界值方法抽取数据。
由于全局变量g_DirRoot是个链表,为了验证给链表添加一个节点的操作是否正确,需要考虑链表为空和非空两种不同情况。
软件测试流程图案例

软件测试流程图案例在线购物场景测试:第一步:确定基本流和备选流第二步:确定场景场景流的组合场景1—成功购物基本流场景2---账号不存在基本流备选流1 场景3---账号或密码错误基本流备选流2 场景4---余额不足基本流备选流3 场景5---账号没有钱基本流备选流4第三步:设计用例(v:有效;I:无效;n/a:不相干)输入用例场景/条件预期结果编号账号密码余额1:成功购物成功购物 1 V V V2:账号不存在提示账号不存在 2 I n/a n/a3:账号或密码错误(账提示账号或密码错误,返回到3 V I n/a 号正确,密码错误) 基本流步骤33:账号或密码错误(账提示账号或密码错误,返回到4 I V n/a 号错误,密码正确) 基本流步骤3提示账号余额不足请充值,充4:余额不足 5 V V I 值后返回到基本流步骤4 提示用户绑定银行卡或充值,5:账号没有钱 6 V V I 充值后返回到基本流步骤4第四步:设计数据,填入用例表(前置条件:所购商品价格150元) 假设Sue是注册用户,密码1s2,余额200;Jim未注册用户;Sun是注册用户,密码1234;Van是注册用户,密码1v2,账号余额1;Tom是注册用户,密码123,余额为0;用例输入场景/条件预期结果编号账号密码余额1:成功购物成功购物 1 Sue 1s2 2002:账号不存在提示账号不存在 2 Jim -- --3:账号或密码错误(账提示账号或密码错误,返回3 Sun 12345678 -- 号正确,密码错误) 到基本流步骤33:账号或密码错误(账提示账号或密码错误,返回4 Sunny 1234 -- 号错误,密码正确) 到基本流步骤3提示账号余额不足请充值,4:余额不足 5 Van 1v2 1 充值后返回到基本流步骤4课堂练习:旅馆住宿系统房间网上预订业务• 需求:游客访问网站进行网上房间预订操作,选择合适的房间后,进行在线预订;此时,需使用个人账号登录系统;待登录成功后,进行订金支付(订金额为1天的房款);支付成功后,生成房间预订单,完成整个房间预订流程。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
在线购物场景测试:
第一步:确定基本流和备选流
第二步:确定场景
场景流的组合
场景1—成功购物基本流
场景2---账号不存在基本流备选流1 场景3---账号或密码错误基本流备选流2 场景4---余额不足基本流备选流3 场景5---账号没有钱基本流备选流4
第三步:设计用例(v:有效;I:无效;n/a:不相干)
用例编号场景/条件
输入
预期结果
账号密码余额
1 1:成功购物V V V 成功购物
2 2:账号不存在I n/a n/a 提示账号不存在
3 3:账号或密码错误(账
号正确,密码错误)
V I n/a
提示账号或密码错误,返回到
基本流步骤3
4 3:账号或密码错误(账
号错误,密码正确)
I V n/a
提示账号或密码错误,返回到
基本流步骤3
5 4:余额不足V V I 提示账号余额不足请充值,充值后返回到基本流步骤4
6 5:账号没有钱V V I 提示用户绑定银行卡或充值,充值后返回到基本流步骤4
第四步:设计数据,填入用例表(前置条件:所购商品价格150元)假设Sue是注册用户,密码1s2,余额200;
Jim未注册用户;
Sun是注册用户,密码1234;
Van是注册用户,密码1v2,账号余额1;
Tom是注册用户,密码123,余额为0;
用例编号场景/条件
输入
预期结果
账号密码余额
1 1:成功购物Sue 1s
2 200 成功购物
2 2:账号不存在Jim -- -- 提示账号不存在
3 3:账号或密码错误(账
号正确,密码错误)
Sun 12345678 --
提示账号或密码错误,返回
到基本流步骤3
4 3:账号或密码错误(账
号错误,密码正确)
Sunny 1234 --
提示账号或密码错误,返回
到基本流步骤3
5 4:余额不足Van 1v2 1 提示账号余额不足请充值,充值后返回到基本流步骤4
课堂练习:旅馆住宿系统房间网上预订业务
•需求:游客访问网站进行网上房间预订操作,选择合适的房间后,进行在线预订;
此时,需使用个人账号登录系统;待登录成功后,进行订金支付(订金额为1天的房款);支付成功后,生成房间预订单,完成整个房间预订流程。
•前置条件:
•房间类型:标准间(100元/天)、单人间(200元/天)、双人间(300元/天)
•单人间已住满,其他房间有空余;
•Hello为注册用户,密码为123456;
•Nihao为未注册用户。
第一步:确定基本流和备选流
基本流游客访问网站进行网上房间预订操作,选择合适的房间后,进行在线预订
备选流1 账号不存在
备选流2 账号或密码错误
备选流3 用户账号余额不足
备选流4 用户账户没有钱
备选流5 标准房间已满
备选流6 单人间已满
备选流7 双人间已满
第二步:确定场景
第三步:设计用例(v:有效;I:无效;n/a:不相干;标准间(100元/天)、单人间(200元
假设Sue是注册用户,密码1s2,余额200;
•J房间类型:标准间(100元/天)、单人间(200元/天)、双人间(300元/天)
•单人间已住满,其他房间有空余;
•Hello为注册用户,密码为123456;
•Nihao为未注册用户。
•
;。