码迷,mamicode.com
首页 > 其他好文 > 详细

Liam的软件测试学习历程(三):JUint使用

时间:2016-03-18 23:32:55      阅读:361      评论:0      收藏:0      [点我收藏+]

标签:

  今天的上机课上,我尝试了使用JUint和EclEmma对项目进行测试。

  首先是这两个工具的安装,JUint比较容易,只需将需要的jar包引入到项目中即可,而EclEmma则需要在Eclipse中选择安装新软件来进行安装。

  安装好后,是完成对待测项目的编程,这次的测试代码是一个检测三角形形状的方法。我的代码如下:

package com.triangleProblem;

import junit.framework.Test;

public class Triangle {

    
    public Triangle(){}
    
    public boolean testThreeSideAmount( int sideOne,int sideTwo,int sideThree ){
        boolean isRight = false;
        if ( (sideOne + sideTwo > sideThree)){
            isRight = true;
        }
        return isRight;
    }
    
    public boolean testIsTriangle(int sideOne,int sideTwo,int sideThree){
        boolean isTriangle = false;
        if (sideOne > 0 && sideTwo > 0 && sideThree > 0){
            if (testThreeSideAmount(sideOne, sideTwo, sideThree)){
                if(testThreeSideAmount(sideOne, sideThree, sideTwo)){
                    if(testThreeSideAmount(sideTwo, sideThree, sideOne)){
                        isTriangle = true;
                    }
                }
            }    
        }
        return isTriangle;
    }
    
    public boolean testSideEqual(int sideOne,int sideTwo){
        boolean equals = false;
        if (sideOne == sideTwo){
            equals = true;
        }
        return equals;
    }
    
    public String test(int sideOne,int sideTwo,int sideThree){
        String result;
        boolean isTriangle = this.testIsTriangle(sideOne,sideTwo,sideThree);
        if( isTriangle ){
            boolean ab = this.testSideEqual(sideOne, sideTwo);
            boolean ac = this.testSideEqual(sideOne, sideThree);
            boolean bc = this.testSideEqual(sideTwo, sideThree);
            if(ab && ac && bc){
                result = "Equilateral";
            }else if (!(ab || ac || bc)){
                result = "Scalene";
            }else {
                result = "Isosceles";
            }
        }else{
            result = "Not a Triangle";
        }
        return result;
    }
    
}

  这段代码中,主要有testThreeSideAmount()、testIsTriangle()、testSideEqual()和test()四个方法,他们的功能分别是测试前两个参数之和是否大于第三个参数、测试输入的三个数是否可以构成三角形、测试两个参数是否相等、判断三角形的形状。

  为了测试这些方法,我编写四个测试用例的代码,分别测试每个方法,并在每段代码中我有对所有的可能情况,给出了相应的测试用例,这样一来在之后使用EclEmma进行测试时就可以达到100%的覆盖率了。

  最终的测试结果如下图:

  技术分享

技术分享

从结果可以看出28个测试用例没有错误,且对目标代码Triangle.java的覆盖率达到了100%,这样就完成了测试。

Liam的软件测试学习历程(三):JUint使用

标签:

原文地址:http://www.cnblogs.com/tju-liuchang/p/5293986.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!