第2章 黑盒测试因果图
- 格式:ppt
- 大小:356.00 KB
- 文档页数:49
⿊盒测试——等价类划分、边界值分析、因果图、状态图、场景、正交试验法⿊盒测试常⽤测试⽅法的选择:1⾸先采⽤等价类划分法来编写测试⽤例2必要时采⽤边界值分析法进⾏补充测试⽤例3采⽤错误推测法再追加测试⽤例4对照程序逻辑,检查⾃⼰设计出的测试⽤例逻辑覆盖程度,若覆盖不够,则需要再补充其他的测试⽤例5如果程序功能含有输⼊条件的组合情况,应⼀开始就采⽤因果图法6如果程序某功能适合⾃动测试,可以采⽤⾃动化测试及随机测试。
什么是⿊盒测试以及优缺点?定义:⿊盒测试把测试对象看做⼀个⿊盒⼦,不⽤考虑程序内部结构和内部特性,依据程序需求规格说明书,检查程序功能是否符合功能说明。
优缺点:优:1功能性测试与软件如何实现⽆关,如果实现发⽣变化,功能性测试仍然可⽤;2测试⽤例编写与软件开发同时进⾏,节省软件开发时间3通过软件的⽤例可⽤设计出⼤部分功能性测试⽤例缺:1测试⽤例数量⼤2测试⽤例可能产⽣很多冗余3功能性测试的覆盖范围不可能达到100%⿊盒测试⽤例设计⽅法?答:1等价类划分法(有意义,合理的输⼊数据组成集合检查是否符合产品需求;⽆意义,不合理的输⼊数据组成的集合推测不符合需求的地⽅)、2边界值分析法(输⼊的边界值进⾏测试)、3因果图法(分析和表达多逻辑条件下执⾏不同操作)、4状态图法(和产品需求反着来,⽐如要求输⼊数字,就输⼊字母,要求输⼊正数,就输⼊负数等)、5场景法(利⽤图解法分析输⼊的各种组合情况,即输⼊多个条件的各种组合及输出情况之间的相互制约关系)、6正交试验法(⽐如要进⾏18次测试,最终选择具有代表性的9次进⾏试验)7其他测试⽅法有:错误推测法、通过测试与失败测试、随机测试边界值划分法:考虑的边界数据类型如数值、速度、字符、地址、位置、尺⼨、数量;以及考虑条件的等价区间:默认、空⽩、空值、零值和⽆。
还要考虑:⾮法、错误、不正确和垃圾数据。
还要测试:程序的状态及切换。
次边界条件:。
一、利用因果图方法设计测试用例,步骤必须描述清楚。
主要包括:1)分析题目中存在的输入条件和输出结果;2)分析原因和原因、原因和结果之间的关系,化因果图;3)将因果图转换为判定表,并进行优化;4)针对判定表中的每一列设计测试用例。
某软件规格说明书包含这样的要求,在输入的某行字符中,第一个字符必须是字母S或者M或者L,第二个字符必须是数字,在此情况下进行数据的登记,但如果第一个字符不正确,则给出输出信息第一个标号不正确;如果第二个字符不是数字,则给出信息第二个标号不正确。
第一个程序:package com;import java.util.Scanner;public class test1 {public static void main(String[] args) {Scanner sca = new Scanner(System.in);if(sca.hasNext()){String str = sca.next();int num = -1;if(str.length()>1){switch (str.charAt(0)) {case 'S':num = (int)str.charAt(1);if(num>=48 && num<=57)System.out.println("进行数据的登记");elseSystem.out.println("第二个标号不正确");break;case 'M':num = (int)str.charAt(1);if(num>=48 && num<=57)System.out.println("进行数据的登记");elseSystem.out.println("第二个标号不正确");break;case 'L':num = (int)str.charAt(1);if(num>=48 && num<=57)System.out.println("进行数据的登记");elseSystem.out.println("第二个标号不正确");break;default:System.out.println("第一个标号不正确");break;}}elseSystem.out.println("第一个标号不正确");}}}第二个程序:package com;import java.util.Scanner;public class test {public static String checkStr(String str){if(str.length()>2){int one = (int)str.charAt(0);int two = (int)str.charAt(1);if(one==76 || one==77 || one==83){if(two>=48 && two<=57)return str;elsereturn "第二个标号不正确";}elsereturn "第一个标号不正确";}return "第一个标号不正确";}public static void main(String[] args) {Scanner sca = new Scanner(System.in);if(sca.hasNext()){String str = sca.next();String result = test.checkStr(str);System.out.println(result);}}}因果图1∽E3 C 2 ∨113∨E14∽E2。
测试用例设计方法之因果图法与判定表1.因果图法1.1.前言从用自然语言书写的程序规格说明的描述中找出因(输入条件)和果(输出或程序状态的改变),可以通过因果图转换为判定表。
因果图法即因果分析图,又叫特性要因图、石川图或鱼翅图,它是由日本东京大学教授石川馨提出的一种通过带箭头的线,将质量问题与原因之间的关系表示出来,是分析影响产品质量的诸因素之间关系的一种工具。
1.2.定义因果图法是一种适合于描述对于多种输入条件组合的测试方法,根据输入条件的组合、约束关系和输出条件的因果关系,分析输入条件的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件涉及的各种组合情况。
因果图法一般和判定表结合使用,通过映射同时发生相互影响的多个输入来确定判定条件。
因果图法最终生成的就是判定表,它适合于检查程序输入条件的各种组合情况。
采用因果图法能帮助我们按照一定的步骤选择一组高效的测试用例,同时,还能指出程序规范中存在什么问题,鉴别和制作因果图。
因果图法着重分析输入条件的各种组合,每种组合条件就是“因”,它必然有一个输出的结果,这就是“果”。
1.3.因果关系因果图的表示中输入与输出间的因果关系有四种:1)恒等关系:当输入条件发生,会产生对应输出,当输入条件不发生时,不会产生都会应输出。
2)非关系:与恒等关系相反。
3)或关系:多个输入条件中,只要有一个发生,则会产生对应输出。
4)与关系:多个输入条件中,只有所有输入项发生时,才会产生对应输出。
特定的符号标明因果关系如下(图1.3.1):图1.3.1因果图的表示中输入与输入间的约束关系有四种:1)异(E):所有输入中至多一个输入条件发生。
2)或(I):所有输入中至少一个输入条件发生。
3)唯一(O):所有输入中有且只有一个输入条件发生。
4)要求(R):所有输入中只有一个输入条件发生,则其它输入也会发生。
特定的符号标明输入与输入间约束关系如下(图1.3.2):图1.3.2因果图的表示中输出条件约束类型(见图1.3.2):1)输出条件的约束只有M约束(强制):若结果a是1,则结果b强制为0。
黑盒测试学生成绩因果图测试用例引言本文档旨在为黑盒测试学生成绩因果图模型提供测试用例。
通过这些测试用例,我们将验证学生成绩因果图模型的功能和性能,以确保其正常运行并生成准确可靠的学生评估结果。
目标学生成绩因果图模型的主要目标是根据学生的各项学习指标,预测他们的成绩。
因此,测试用例将以以下方面进行测试:1. 输入变量的准确性和完整性 2. 因果图模型的准确性和可靠性 3. 输出结果的准确性和一致性测试用例用例一:输入变量测试序号测试步骤预期结果1输入学生姓名和学号学生姓名和学号被正确接受2输入学生的平时作业成绩(>=0)平时作业成绩被正确接受3输入学生的考试成绩(>=0)考试成绩被正确接受4输入学生的出勤状况(百分比)出勤状况被正确接受5输入学生的课堂表现(0-10)课堂表现被正确接受6输入学生的参与度(0-10)参与度被正确接受7输入学生的作业提交状况(百分比)作业提交状况被正确接受8输入学生的学习时间(分钟)学习时间被正确接受9输入学生的自觉程度(0-10)自觉程度被正确接受用例二:模型准确性测试序号测试步骤预期结果1输入多个学生的各项学习指标,如平时作业、考试成绩等模型能够正确计算学生的预测成绩2输入一个学生的学习指标,并将同一学生的指标再次输入进行重复测试模型应该生成相同的预测成绩3输入学生的学习指标中有一项或多项缺失模型应该能够正确处理缺失的学习指标4输入学生的学习指标中有异常值模型应该能够正确处理异常值5输入学生的学习指标中有不合理的组合模型应该能够警告或处理不合理的组合6输入学生的学习指标中的数据有误模型应该能够识别并纠正错误的学习指标用例三:输出结果测试序号测试步骤预期结果1输入多个学生的各项学习指标,模型能够生成准确的预包括平时作业、考试成绩等测成绩2输入多个学生的学习指标,并将同一学生的指标再次输入进行重复测试模型生成的预测成绩应该相同3输入学生的学习指标中有一项或多项缺失模型应该能够对缺失的指标进行插补并生成预测成绩4输入学生的学习指标中有异常值模型应该能够对异常值进行处理并生成预测成绩5输入学生的学习指标中有不合理的组合模型应该能够警告或处理不合理的组合6输入学生的学习指标中的数据有误模型应该能够识别并纠正错误的学习指标结论通过对学生成绩因果图模型的黑盒测试用例的执行,可以验证模型的输入变量处理、模型准确性和输出结果的正确性。