51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

楼主: 39556711
打印 上一主题 下一主题

[求助] 测试三角形的测试用例

[复制链接]

该用户从未签到

181#
发表于 2012-5-18 03:50:36 | 只看该作者
import java.util.*;
public class Accp2 {

        /**
         * @param args
         */
        public static void main(String[] args) {
                // TODO Auto-generated method stub
                int a;
                int b;
                int c;
                int length;
                Scanner input=new Scanner(System.in);
                System.out.println("请输入三角形三条边长");
                a=input.nextInt();
                b=input.nextInt();
                c=input.nextInt();
                if(a==b&&b!=c&&b>0&&a+b>c&&b+c>a&&a+c>b){
                        System.out.println("等腰三角形");
                }else if(a==b&&b==c&&a>0){
                        System.out.println("等边三角形");

                }else if(a>0&&b>0&&c>0&&a+b>c&&b+c>a&&a+c>b){
                        length=a+b+c;
                        System.out.println(length);
                }else{
                        System.out.println("出错");
                }

        }
}


====修改以后的,自己试了下,好像可以按LZ的题目来执行了。
应该还有 优化空间吧,菜鸟写的,大家看看给点意见
别拍砖啊^_^
回复 支持 反对

使用道具 举报

该用户从未签到

182#
发表于 2012-5-19 02:22:13 | 只看该作者
测试三角形的算法流程图,大家给点意见

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
回复 支持 反对

使用道具 举报

该用户从未签到

183#
发表于 2012-6-28 15:58:31 | 只看该作者
407547240@qq.com求一份。
回复 支持 反对

使用道具 举报

该用户从未签到

184#
发表于 2012-8-20 22:08:02 | 只看该作者
感觉这个写的很好,复制过来大家分享下
三角形问题测试用例设计之总结

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

假设输入三个整数a、b、c分别作为三边的边长构成三角形。通过程序判定所构成的三角形的类型,当此三角形为一般三角形、等腰三角形及等边三角形时!要求画出程序的流程图和时序图,并且用自己熟悉的一种语言实现这个功能!我在网上搜索了一下发现已经有好多文章,不过发现很少有写出程序的,其实用java语言也可以实现,流程图和程序图参考的网上的

程序如下:
package sanj;
/**
*
* @author xingzunxi
*/
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个测试用例,已能满足对被测程序图的完全覆盖,不需要再补充其他的测试用例。
回复 支持 反对

使用道具 举报

  • TA的每日心情

    2015-3-9 15:42
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    185#
    发表于 2012-8-22 09:25:06 | 只看该作者
    软件测试艺术这本书里面有三角形测试用例。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    186#
    发表于 2012-10-24 15:19:05 | 只看该作者
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2015-5-20 17:11
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    187#
    发表于 2013-2-19 17:11:36 | 只看该作者
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    188#
    发表于 2013-4-10 22:50:48 | 只看该作者
    回复 1# 39556711


        这个是编程之美上的嘛
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    189#
    发表于 2013-4-11 16:49:09 | 只看该作者
    362233386@qq.com  楼主 麻烦发我一份  谢谢哈~~
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-22 12:16 , Processed in 0.070532 second(s), 22 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表