当前位置:首页 > 测试实验习题
11 6 30 1975 1975.7.2 12 6 31 1975 输入日期超界 13 6 32 1975 day超出[1?31] 14 -1 15 1975 Mouth超出[1?12] 15 1 15 1975 1975.1.17 16 2 15 1975 1975.2.17 17 11 15 1975 1975.11.17 18 12 15 1975 1975.12.17 19 13 15 1975 Mouth超出[1?12] ④假设商店货品价格(R) 都不大于100元(且为整数),若顾客付款(P)在100元内,现有一个程序能在每位顾客付款后给出找零钱的最佳组合(找给顾客货币张数最少)。 假定此商店的货币面值只包括:50元(N50)、10元(N10)、 5元(N5)、1元(N1) 四种。请结合等价类划分法和边界值分析法为上述程序设计 出相应的测试用例。
1) 分 析 输 入 的 情 形 。 R > 100 0 < R < = 100 R <= 0 P > 100 R<= P <= 100 P < R
2) 分 析 输 出 情 形 。 N50 = 1 N50 = 0 4 > =N10 >= 1 N10 = 0 N5 = 1 N5 = 0 4 > =N1 >= 1 N1 = 0
3) 由 上 述 之 输 入 / 输 出 条 件 组 合 出 可 能 的 情 形,为 满 足 以 上 之 各 种 情 形 , 测 试 资 料 设 计。
输入 商品价格 R>100 付款 找零 输出 测试用例 顾客付款金结果 商品价格 额 无效 101 R<=0 无效 -1 0 后 缀——4位数字。 假定被测程序能接受一切符合上述规定的电话号码,拒绝所有不符合规定的电话号码。请写出每个输入条件的有效等价类和无效等价类。 输入条件 有效等价类 编号 无效等价类 编号 空白 1 有非数字字符 5 地区码 少于四位数字 6 四位数 2 多于4位数字 7 有非数字字符 8 起始位为’0’ 9 前缀 200-999 3 起始位为’1’ 10 少于3位数字 11 多于3位数字 12 有非数字字符 13 后缀 4位数字 4 少于4位数字 14 多于4位数字 15 ⑥某程序规定:“?对功率大于50马力的机器、维修记录不全或已运行10年以上的机器,应给予优先的维修处理?”。这里假定:“维修记录不全”和“优先维修处理”均已在别处有更严格的定义。请建立判定表。 答:根据问题中描述的输入条件和输出结果,列出所有的条件桩和动作桩。其中条件桩有三项:1)功率大于50马力吗?2)维修记录不全吗?3)运行超过10年吗?动作桩有两项:1)进行优先处理;2)作其他处理; 判定表如下表所示: 1 2 3 4 5 6 7 8 功率大于50马力吗? Y Y Y Y N N N N 条 维修记录不全吗? Y Y N N Y Y N N 件 运行超过10年吗? Y N Y N Y N Y N ? ? ? ? ? 动 进行优先处理 0 100 100 50 51 90 91 95 96 99 100 ? ? 作 作其他处理 ? ⑦某公司招聘人员,其要求为:学历:本科及以上;专业:计算机、通信、自动化;年龄:22-30 岁。请划分出各条件的有效等价类和无效等价类。 答:学历的等价类:A1={本科,硕士,博士}, A2={专科,高中,初中,小学,无} 专业的等价类:B1={计算机、通信、自动化}, B2={其他} 年龄的等价类:C1={22-30岁},C2={小于22岁},C3={大于30岁} ⑧某个软件的规格说明中包含了下面的要求:第一列字符必须是A 或B,第二列字符必须是一个数字,在此情况下进行文字的修改。但如果第一列字符不正确,则给出信息L,如果第二列字符非数字,则给出信息M。请用基于决策表的测试方法进行测试,并设计测试用例覆盖每一种情况。 答:输入条件:第一列字符:{A},{B},{其他};第二列字符:{数字},{其他} 动作:修改文件,给出L,给出M。(6分) 决策表如下表所示: 条件 第一列 A B 其他 A B 其他 第二列 数字 数字 数字 其他 其他 其他 动作 修改文件 √ √ 给出L √ √ 给出M √ √ √ 测试用例 A6 B2 M1 A! B% V+ 三简答题 ①请试着比较一下黑盒测试、白盒测试、单元测试、集成测试、系统测试、验收测试的区别与联系。 答:黑盒测试:把测试对象当成一个黑盒子,测试人员完全不考虑逻辑结构和内部特性,只依据程序的需求说明书来检查程式的功能是否满足它的功能说明。 白盒测试:把测试对象当成一个透明的盒子,允许测试人员利用程序内部逻辑结构及相关信息,设计或选择测试用例,对程式所有逻辑路径进行测试。 单元测试:白盒测试的一种,对软件设计中的单元模块进行测试。 集成测试:在单元测试的基础上,对单元模板之间的连接和组装W进行测试 系统测试:在所有都考虑的情况下,对系统进行测试 验收测试 :第三方进行的确认软件满足需求的测试 ②什么是白盒测试?白盒测试主要采用的技术有哪些? 答:白盒测试:测试者了解被测程序的内部结构和处理过程,对程序的所有逻辑路径进行测试,在不同点检查程序状态,确定实际状态与预期状态是否一致。 白盒测试主要采用的技术有:路径测试技术和事务处理流程技术,对包含有大量逻辑判断或条件组合的程序采用基于逻辑的测试技术。 白盒测试有那几种方法?并简单描述各种方法的特点。 答: 白盒测试的测试方法总体上分为静态方法和动态方法两大类。白盒测试的测试方法有代码检查法、静态结构分析法、静态质量度量法、逻辑覆盖法、基本路径测试法、域测试、符号测试、Z路径覆盖、程序变异。 1.静态分析法 是一种不通过执行程序而进行测试的技术。静态分析的关键功能是检查软件 的表示和描述是否一致 , 没有冲突或者没有歧义。 2.动态分析法 的主要特点是当软件系统在模拟的或真实的环境中执行之前、之中和之后 , 对软件系统行为的分析。动态分析包含了程序在受控的环境下使用特定的期望结果进行正式的运行。它显示了一个系统在检查状态下是正确还是不正确。在动态分析技术中 , 最重要的技术是路径和分支测试。下面要介绍的六种覆盖测试方法属于动态分析方法。 常用的逻辑覆盖测试方法有哪几种?并简单描述各种方法的目的。 答:1)、语句覆盖。就是选择足够的测试用例,使程序中的每个可执行语句至少执行一次。 2)、判定覆盖。就是执行足够的测试用例,使得程序中的每个判定的\和\值都至少执行一次,这种测试也称为“分支测试”。 3)、条件覆盖。执行足够的测试用例,使程序每个判定中的每个条件的\和\值至少执行一次。 4)、判定/条件覆盖。执行足够的测试用例,使得判定中每个条件的所有可能至少出现一次,同时每个判定本身的判定结果也至少出现一次。 5)、条件组合覆盖。执行足够的测试用例,使得每个判定中条件的各种可能组合至少出现一次。 6)、路径覆盖。执行足够的测试用例,要求覆盖程序中所有可能的路径 ③逻辑覆盖中几种主要覆盖的含义?举例说明? 答:白盒测试法的覆盖标准有逻辑覆盖、循环覆盖和基本路径测试。逻辑覆盖包含多种:语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖和路径覆盖。 语句覆盖:就是设计若干个测试用例,运行被测程序,使得每一可执行语句至少执行一次。这里的“若干个”,意味着使用测试用例越少越好。 判定覆盖:有时也称分支覆盖,就是指设计若干测试用例,运行被测程序,使得每个判定的取真分支和取假分支至少经历一次。 条件覆盖:设计足够多的测试用例,使得每一判定语句中每个逻辑条件的可能取值至少满足一次。 判定条件覆盖:设计足够多的测试用例,使得判定中的每个条件的所有可能(真/假)至少出现一次,并且每个判定本身的判定结果也至少出现一次。 条件组合覆盖:也称多条件覆盖,设计足够多的测试用例,使得每个判定中条件的各种可能组合都至少出现一次(以数轴形式划分区域,提取交集,建立最少的测试用例)。 路径覆盖:路径测试就是设计足够的测试用例,覆盖程序中所有可能的路径。路径覆盖是覆盖率最高的一种覆盖技术。 四、白盒用例设计题 ①使用逻辑覆盖测试方法测试以下程序段: void DoWork (int x,int y,int z) { 1 int k=0,j=0; 2 if ( (x>3)&&(z<10) ){ 4 k=x*y-1; 5 j=sqrt(k);
共分享92篇相关文档