博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【tool】三角形问题测试用例设计之总结
阅读量:4965 次
发布时间:2019-06-12

本文共 1760 字,大约阅读时间需要 5 分钟。

三角形设计测试用例的问题在面试的时候经常遇到。

  假设输入三个整数a、b、c分别作为三边的边长构成三角形。通过程序判定所构成的三角形的类型,当此三角形为一般三角形、等腰三角形及等边三角形时!要求画出程序的流程图和时序图,并且用自己熟悉的一种语言实现这个功能!我在网上搜索了一下发现已经有好多文章,不过发现很少有写出程序的,其实用java语言也可以实现,流程图和程序图参考的网上的。
  三角形设计测试用例的问题在面试的时候经常遇到。
  假设输入三个整数a、b、c分别作为三边的边长构成三角形。通过程序判定所构成的三角形的类型,当此三角形为一般三角形、等腰三角形及等边三角形时!要求画出程序的流程图和时序图,并且用自己熟悉的一种语言实现这个功能!我在网上搜索了一下发现已经有好多文章,不过发现很少有写出程序的,其实用java语言也可以实现,流程图和程序图参考的网上的。
  程序如下:
package sanj;
/**
 *
 * @author ltesting.net
 */
import java.io.*;
class sanj{
public static int a,b,c;
 public static void main(String arg[]) throws IOException{
try{
BufferedReader stdin=new BufferedReader(new InputStreamReader(System.in)); //接收键值
System.out.println("输入三边值,每个值输入后回车");
System.out.println("请输入:");
a=Integer.valueOf(stdin.readLine());
b=Integer.valueOf(stdin.readLine());
c=Integer.valueOf(stdin.readLine());
}catch(IOException e){
System.out.println("出现异常!");
System.exit(0);
}
if(a+b<c || a+c<b || b+c<a){
System.out.println("你输入的不能构成三角形");
}
if(a==b || a==c || b==c)
{
if(a==b && b==c) System.out.println("等边三角形");
else System.out.println("等腰三角形");
}
else System.out.println("一般三角形");
}
}
  【解】
  第一步:确定测试策略。在本例中,对被测程序的功能有明确的要求,即:
  (1)判断能否组成三角形;
  (2)识别等边三角形;
  (3)识别等腰三角形;
  (4)识别任意三角形。因此可首先用黑盒法设计测试用例,然后用白盒法验证其完整性,必要时再进行补充。
  第二步:根据本例的实际情况,在黑盒法中首先可用等价分类法划分输入的等价类,然后用边界值分析法和猜错法作补充。
  等价分类法:
  有效等价类
  输入3个正整数:
  (1)3数相等
  (2)3数中有2个数相等,比如AB相等
  (3)3数中有2个数相等,比如BC相等
  (4)3数中有2个数相等,比如AC相等
  (5)3数均不相等
  (6)2数之和不大于第3数,比如最大数是A
  (7)2数之和不大于第3数,比如最大数是B
  (8)2数之和不大于第3数,比如最大数是C
  无效等价类:
  (9)含有零数据
  (10)含有负整数
  (11)少于3个整数
  (12)含有非整数
  (13)含有非数字符
  边界值法:
  (14)2数之和等于第3数
  猜错法:
  (15)输入3个零
  (16)输入3个负数
  第三步:提出一组初步的测试用例,如下表所示:
  第四步:用白盒法验证第三步产生的测试用例的充分性。结果表明,上表中的前8个测试用例,已能满足对被测程序图的完全覆盖,不需要再补充其他的测试用例。

转载于:https://www.cnblogs.com/ziyaboke/p/4089106.html

你可能感兴趣的文章
[004]多维数组和指针
查看>>
MySQL 基础语句的练习
查看>>
unity2D物理引擎之-Rigidbody 2D
查看>>
Editing 2011-2012 ACM-ICPC Northeastern European Regional Contest (NEERC 11)
查看>>
VMware虚拟机安装CentOS 6.9图文教程
查看>>
Floyd 基础知识
查看>>
CSS笔记 - fgm练习 2-7 - 简易选项卡
查看>>
移动端提供各种实用工具
查看>>
小程序宿主环境
查看>>
性能是怎么来的
查看>>
洛谷 P1588 丢失的牛
查看>>
Schiff Move Free维骨力这个牌子的保健效果怎么样,是要给中老年人群服用的
查看>>
使用POI进行Excel操作的总结一——创建Workbook,Sheet,Row以及Cell
查看>>
2016-2018,再见了这两年的青葱岁月
查看>>
CentOS 6.5 配置IP地址的三种方法
查看>>
一周结束
查看>>
源码安装
查看>>
前端--收藏功能的实现
查看>>
保利尼奥离中超如肖申克救赎 没人再说人傻钱多
查看>>
Java多线程(一) —— 传统线程技术
查看>>