场景分析法一、以答题业务为例:1.答对题目增加题目积分,积分达到设定值时奖励一个礼包;2.取题规则为随机不重复;3.答错题目后答新题.1.确定基本流与备选流基本流: 步骤1. 开始答题步骤2. 判断是否存在有效题目,存在有效题目,处理:提供题目及备选答案步骤3. 用户答题并答对题目,增加用户相应积分。
步骤4. 判断积分是否达到设定值,达到,获取一个礼包,流程结束。
备选流1: 不存在有效题目基本流步骤2时,题库不存在未答题目,处理:给予无有效题目提示,流程结束。
备选流2: 答错题目基本流步骤3时,答错题目,处理:提示用户答错题目,回到基本流步骤2备选流3:答题后积分达不到设定值基本流步骤4时,答对题后积分仍达不到设定值,处理:回到基本流步骤22.确定以下用例场景:3.通过从确定执行用例场景所需的数据元素入手构建矩阵4.设计数据,把数据填入上面的用例表中二、下图所示是ATM例子的流程示意图。
2.场景设计:下表所示是生成的场景。
3.用例设计4.测试用例表三、用户进入一个在线购物网站进行购物,选购物品后,进行在线购买,这时需要使用账号登录,登录成功后,进行付钱交易,交易成功后,生成订购单,完成整个购物过程。
第一步:确定基本流和备选流基本流:登录在线网站→选择物品→登录账号→付款→生成订单;备选流1:账户不存在;备选流2:账户密码错误;备选流3:用户账户余额不足;备选流4:用户账户没钱。
第二步:根据基本流和备选流确定场景场景1成功购物:备选流;场景2账号不存在:基本流,备选流1;场景3账号密码错误:基本流,备选流2;场景4账户余额不足:基本流,备选流3;场景5账户没钱:基本流,备选流4。
等价类划分法一、计算保费费率的程序(1)分析程序规格说明中给出和隐含的对输入条件的要求,列出等价类表(包括有效等价类和无效等价类)。
年龄:一位、两位或三位整数,值的有效范围为0~120性别:一位英文字符,只能取值‘M’或‘F’婚姻:字符,只能取值‘已婚’或‘未婚’抚养人数:空白或一位非零整数(1~9)(2)根据(1)中的等价类表,设计能覆盖所有等价类的测试用例。
二、某城市电话号码由三部分组成,分别是:地区码——空白或三位数字;前缀——非‘0’或‘1’开头的三位数字;后缀——4位数字。
假定被测程序能接受一切符合上述规定的电话号码,拒绝所有不符合规定的电话号码。
请使用等价类划分法设计测试用例,给出等价类列表,设计测试用例。
三、根据下面给出的规格说明,利用等价类划分的方法,给出足够的测试用例。
一个程序读入3个整数,把这三个数值看作一个三角形的3条边的长度值。
这个程序要打印出信息,说明这个三角形是不等边的、是等腰的、还是等边的。
四、设有一个档案管理系统,要求用户输入以年月表示的日期。
假设日期限定在1990年1月~2049年12月,并规定日期由6位数字字符组成,前4位表示年,后2位表示月。
现用等价类划分法设计测试用例,来测试程序的"日期检查功能"。
2)设计测试用例,以便覆盖所有的有效等价类在表中列出了3个有效等价类,编号分别为①、⑤、⑧,设计的测试用例如下:测试数据期望结果覆盖的有效等价类200211 输入有效①、⑤、⑧3)为每一个无效等价类设计一个测试用例,设计结果如下:测试数据期望结果覆盖的无效等价类95June 无效输入②20036 无效输入③2001006 无效输入④198912 无效输入⑥200401 无效输入⑦200100 无效输入⑨200113 无效输入⑩五、NextDate 函数包含三个变量:month 、day 和year ,函数的输出为输入日期后一天的日期。
例如,输入为2006年3月7日,则函数的输出为2006年3月8日。
要求输入变量month 、day 和year 均为整数值,并且满足下列条件:①1≤month≤12②1≤day≤31③1920≤year≤20501)有效等价类为:M1={月份:1≤月份≤12}D1={日期:1≤日期≤31}Y1={年:1812≤年≤2012}2)若条件①~ ③中任何一个条件失效,则NextDate 函数都会产生一个输出,指明相应的变量超出取值范围,比如"month 的值不在1-12 范围当中" 。
显然还存在着大量的year 、month 、day 的无效组合,NextDate 函数将这些组合作统一的输出:" 无效输入日期" 。
其无效等价类为:M2={月份:月份<1}M3={月份:月份>12}D2={日期:日期<1}D3={日期:日期>31}Y2={年:年<1812}Y3={年:年>2012}边界值分析法一、根据下面给出的规格说明,利用边界值分析的方法,给出足够的测试用例。
“一个程序读入3个整数,把这三个数值看作一个三角形的3条边的长度值。
这个程序要打印出信息,说明这个三角形是不等边的、是等腰的、还是等边的。
”在三角形问题描述中,除了要求边长是整数外,没有给出其它的限制条件。
在此,我们将三角形每边边长的取范围值设值为[1, 100]我们可以设三角形的3条边分别为A,B,C。
如果它们能够构成三角形的3条边,必须满足:A>0,B>0,C>0,且A+B>C,B+C>A,A+C>B。
如果是等腰的,还要判断A=B,或B=C,或A=C。
如果是等边的,则需判断是否A=B,且B=C,且A=C。
二、现有一个学生标准化考试批阅试卷,产生成绩报告的程序。
其规格说明如下:程序的输入文件由一些有80个字符的记录组成,如下图所示,所有记录分为3组:三、找零钱最佳组合假设商店货品价格(R) 皆不大于100 元(且为整数),若顾客付款在100 元内(P) ,求找给顾客之最少货币个(张)数?(货币面值50 元(N50) ,10 元(N10) , 5 元(N5) , 1 元(N1) 四种)1、分析输入的情形:R > 100 0 < R < = 100 R <= 0 P > 100 R<= P <= 100 P < R2、分析输出情形:N50 = 1 4 >= N10 >= 1 N5 = 1 4 >=N1 >= 13.分析每种情况,以RR1,RR2, RR3 ,RR4表示计算要找50, 10, 5 ,1元货币数时之剩余金额。
R > 100 R <= 0 P > 100 P <= RRR1 >= 50RR2 >= 10RR3 >= 5RR4 >= 14.由上述之输入/输出条件组合出可能的情形。
R > 100R <= 00 < R <= 100, P > 1000 < R <= 100, P < R0 < R <= 100, R <= P <= 100, RR = 500 < R <= 100, R <= P <= 100, RR = 490 < R <= 100, R <= P <= 100, RR = 100 < R <= 100, R <= P <= 100, RR = 90 < R <= 100, R <= P <= 100, RR = 50 < R <= 100, R <= P <= 100, RR = 40 < R <= 100, R <= P <= 100, RR = 10 < R <= 100, R <= P <= 100, RR = 05.为满足以上之各种情形,测试用例设计如下:1. 货品价格= 1012. 货品价格= 03.货品价格= -14. 货品价格= 100, 付款金额= 1015. 货品价格= 100, 付款金额= 996. 货品价格= 50, 付款金额= 1007. 货品价格= 51, 付款金额= 1008. 货品价格= 90, 付款金额= 1009. 货品价格= 91, 付款金额= 10010. 货品价格= 95, 付款金额= 10011. 货品价格= 96, 付款金额= 10012. 货品价格= 99, 付款金额= 10013. 货品价格= 100, 付款金额= 100四、NextDate函数的边界值分析测试用例在NextDate函数中,隐含规定了变量mouth和变量day的取值范围为1≤mouth≤12和1≤day≤31,并设定变量year的取值范围为1912≤year≤2050 。
判定表法一、判定表法是一种分析多种输入条件的组合情况的方法,多种输入条件可以通过判定表来完整地进行排列组合,从而不出现遗漏。
比如以下一个判断表达式:If ( (a>0) || (b>0) || (c>0&&c<100 ) ){…}这段程序中的判定条件可以用判定表如何表示?表中的c<=0?0<c<100?c>=100?是3个排他性条件,即其中同时只有一个条件会满足,也就是在同一列中只能有一个为Y,其他两个均为N。
根据判定表,我们可以输出测试用例如下:二、问题要求:”……对功率大于50马力的机器、维修记录不全或已运行10年以上的机器,应给予优先的维修处理……”。
这里假定,“维修记录不全”和“优先维修处理”均已在别处有更严格的定义。
请建立判定表。
①确定规则的个数:这里有3个条件,每个条件有两个取值,故应有2*2*2=8种规则。
②列出所有的条件茬和动作桩:③填入条件项。
可从最后1行条件项开始,逐行向上填满。
如第三行是:Y N Y N Y N Y N,第二行是:Y Y N N Y Y N N等等。
④填入动作桩和动作顶。
这样便得到形如图的初始判定表。
化简,合并相似规则后得到图。
三、用决策表测试法测试以下程序:该程序有三个输入变量month、day、year(month、day 和year均为整数值,并且满足:1≤month≤12和1≤day≤31),分别作为输入日期的月份、日、年份,通过程序可以输出该输入日期在日历上隔一天的日期。
例如,输入为2004年11月29日,则该程序的输出为2000年12月1日。
1)分析各种输入情况,列出为输入变量month、day、year划分的有效等价类。
2)分析程序规格说明,结合以上等价类划分的情况给出问题规定的可能采取的操作(即列出所有的动作桩)。
3)根据(1)和(2),画出简化后的决策表。