• 第一次实验 Junit简单test三角形的小程序


      1 使用Junit首先要导入两个jar包,分别是hamcrest-all-1.3.jar和junit-4.12.jar。下载后,导入即可。

      2 安装eclemma。首先下载下来,然后拷贝到ecilipse安装目录的dropins文件夹下,删除ecilipse安装目录下的update文件,然后重启ecilipse,当发现ecilipse上有这样一个按钮时,说明Emma安装成功。

      3 接下来编写test代码。与src同级新建一个source folder,在两个source folder下都新建pacage,两个pacage命名相同(比如lab1),在src的lab1下新建一个.java文件,calculate.java,里面的内容如下

    package lab1;
    
    public class calculate {
        private static int result = 0;
        public void triangle(int a,int b,int c)
        {
            if(a<=0 || b<=0 || c<=0)
            {
                result = 0;//边长必须大于0
            }
            else
            {
                if(((a+b)>c) && ((a+c)>b && (b+c)>a))
                {
                    if((a == b) &&(a == c))
                    {
                      result = 3;//等边
                    }
                    if((a==b && a!=c)||(a==c && a!=b)||(b==c && a!=b))
                    {
                        result = 2;//等腰
                        
                    }
                    if(a!=b && a!=c && b!=c)
                    {
                        result = 1;//普通
                    }
                }
                
                else
                {
                    result = 0;//不满足两边之和大于第三边的不是三角形
                }
            }
            
        }
        
        
        public int getReuslt(){
            return result;
        }
        
            public void clear(){
            result = 0;
        }
    
    }

    这是用来判断三角形类型的java类。

    在test的lab1下新建testcal.java,用来写测试程序

    package lab1;
    import static org.junit.Assert.*;
    import org.junit.Test;
    public class testcal {
        
        private static calculate cal = new calculate();
        @Test
        public void testTriangle(){
            
        cal.triangle(5, 5, 5);
        assertEquals(3, cal.getReuslt());
        cal.triangle(5, 5, 6);
        assertEquals(2, cal.getReuslt());
        cal.triangle(3, 4, 5);
        assertEquals(1, cal.getReuslt());
        cal.triangle(12, 5, 5);
        assertEquals(0, cal.getReuslt());
        }
        
    
    }

    运行结果如下

    这个测试数据的结果和预期相同,说明此测试用例没有找出程序的错误。绿色部分为corvered。

    上图是当我们故意写错一个test用例时,(6,5,5)应该是等腰,预期是2,不是0.(2代表等腰,0代表不是三角形),运行后,出现一个failure。

  • 相关阅读:
    [哈工大操作系统]一、环境配置
    [算法笔记]带权并查集
    C++:Reference to non-static member function must be called
    [算法笔记]并查集
    C++:string.size()比较问题
    [算法笔记]二分总结
    【LeetCode每日一题】2020.10.15 116. 填充每个节点的下一个右侧节点指针
    1Manjaro的安装
    【《你不知道的JS(中卷②)》】一、 异步:现在与未来
    【LeetCode每日一题】2020.7.14 120. 三角形最小路径和
  • 原文地址:https://www.cnblogs.com/GSONG/p/5293251.html
Copyright © 2020-2023  润新知