输入三个整数a,b,c,分别作为三角形的三条边,取值范围为1-100,判断由三条边构成的三角形类型为等边三角形、等腰三角形、一般三角形以及不构成三角形。判断结果打印输出。黑盒测试
时间:2024-04-24 15:50:36 来源:网络cs 作者:往北 栏目:防关联工具 阅读:
实验一 黑盒测试
一、实验目的
能熟练应用功能性测试技术进行测试用例设计;对测试用例进行优化设计;二、背景知识
功能测试是指在对程序进行功能抽象的基础上,将程序划分成功能单元,然后在数据抽象的基础上,对每个功能单元生成测试数据进行测试。进行功能测试时,被测程序被当作打不开的黑盒,因而无法了解其内部构造,因此又称为黑盒测试。
1、等价类测试
等价类测试方法是把所有可能的输入数据,即程序的输入域划分成若干部分,然后从每一部分中选取少数有代表性的数据作为测试用例。使用等价类划分方法设计测试用例要经历划分等价类(列出等价类表)和选取测试用例两步。
等价类的划分有两种不同的情况: ① 有效等价类:是指对于程序的规格说明来说,是合理的,有意义的输入数据构成的集合。 ② 无效等价类:是指对于程序的规格说明来说,是不合理的,无意义的输入数据构成的集合。在设计测试用例时,要同时考虑有效等价类和无效等价类的设计。
用等价类划分法设计测试用例步骤:
(1) 形成等价类表,每一等价类规定一个唯一的编号;
(2) 设计一个新的测试用例,使其尽可能多地覆盖尚未覆盖的有效等价类,重复这一步骤,直到所有有效等价类均被测试用例所覆盖;
(3) 设计一个新测试用例,使其只覆盖一个无效等价类,重复这一步骤直到所有无效等价类均被覆盖。
2、边界值测试
边界值分析边界值分析是考虑边界条件而选取测试用例的一种功能测试方法。边界值分析关注输入空间的边界,以标识测试用例,因为错误更可能出现在输入变量的极值附近。
边界值分析的基本思想是:使用在最小值、略高于最小值、正常值、略低于最大值和最大值处取输入变量值。
健壮性测试健壮性是指在异常情况下,软件还能正常运行的能力。健壮性考虑的主要部分是预期输出,而不是输入。
健壮性测试是边界值分析的一种简单扩展。除了变量的5个边界分析取值还要考虑略超过最大值(max)和略小于最小值(min)时的情况。
最坏情况测试最坏情况测试将意味着更大工作量,n变量函数的最坏情况测试会产生5的n次方个测试用例,而边界值分析只产生4n+1个测试用例。
3、基于决策表的测试
决策表适合描述不同条件集合下采取行动的若干组合的情况。使用决策表标识测试用例,则把条件解释为输入,行动解释为输出。有时条件最终引用输入的等价类,行为引用被测试软件的主要功能处理部分,规则解释为测试用例。
对于有限条目决策表,如果有n个条件,则必须有2条规则。如果不关心条目实际地表明条件是不相关的,则没有不关心条目的规则统计为1条规则,规则中每出现一个不关心条目,该规则数乘一次2。
三、实验设备
主流PC机一套,要求安装windows操作系统、Eclipse开发工具和OFFICE工具。
四、实验内容
问题描述:完成一段程序,要求实现这样的功能。
输入三个整数a,b,c,分别作为三角形的三条边,取值范围为1-100,判断由三条边构成的三角形类型为等边三角形、等腰三角形、一般三角形以及不构成三角形。判断结果打印输出。
程序代码(开发环境:Windows7、Eclipse):
import java.util.Scanner;
public class Triangle {
public static void main(String[] args) {
double a, b, c;
Scanner input = new Scanner(System.in);
System.out.println("输入三角形的三边:");
a = input.nextDouble();
b = input.nextDouble();
c = input.nextDouble();
input.close();
if (a > 0 && b > 0 && c > 0) {
if (a + b > c && a + c > b && b + c > a) {
System.out.println("能构成三角形.");
if (a * a + b * b == c * c || a * a + c * c == b * b
|| b * b + c * c == a * a) {
if (a == b || a == c || b == c) {
System.out.println("为等腰直角三角形.");
} else {
System.out.println("一般直角三角形.");
}
} else if (a == b && b == c && a == c) {
System.out.println("为等边三角形.");
} else if ((a == b && a != c) || (a == c && a != b)
|| (b == c && a != c)) {
System.out.println("为等腰三角形.");
} else {
System.out.println("为一般三角形.");
}
} else {
System.out.println("不能构成三角形.");
}
} else {
System.out.println("不能构成三角形.");
}
}
}
测试方法:
黑盒测试(等价类划分+边界值分析)黑盒测试(决策表方法)
五、实验步骤
根据功能性测试技术设计测试用例,主要考虑等价类划分、边界值分析测试技术和决策表方法;根据所学知识确定优化策略(原则:用最少的用例检测出更多的缺陷、软件测试的充分性与冗余性考虑),设计两套测试用例集;根据设计的两套测试用例集进行测试;六、实验要求
根据题目要求编写测试用例(测试用例采用表1格式);表1 测试用例表
用例编号 | 采用方法 | 输入a,b,c | 覆盖等价类号码 | 预期结果 | 执行结果 |
Test1 | 等价类划分 | 10 10 10 | 1 | 等边三角形 | 等边三角形 |
Test2 |
|
|
|
|
|
Test3 |
|
|
|
|
|
Test4 |
|
|
|
|
|
实验结果要求给出两套测试用例集测试效果比较;撰写实验报告;
实验报告结果
等价类划分
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
边界值分析法
决策表方法:
测试用例:
|
本文链接:https://www.kjpai.cn/news/2024-04-24/161866.html,文章来源:网络cs,作者:往北,版权归作者所有,如需转载请注明来源和作者,否则将追究法律责任!
上一篇:Python贵州贵阳二手房源爬虫数据可视化分析大屏全屏系统
下一篇:返回列表
相关文章
- 【前端】使用Web Audio API 技术播放音乐
- stable diffusion webui 搭建和初步使用
- 利用type-C(16P)设计电源接口
- 【华为OD机试】最小传输时延I(Dijkstra 算法—Java&Python&C++&JS
- 解决java.sql.SQLSyntaxErrorException: Unknown database异常的
- 【目标检测实验系列】YOLOv5创新点改进实验:融合Global Context B
- 解决:ERESOLVE unable to resolve dependency tree
- Docker部署WebRTC-Streamer
- VS Code 配置 C/C++ 编程运行环境(保姆级教程)
- 【Web】Web应用程序的工作原理