Ecplise JUnit 三角形

JUnit基础使用

在开始前我们先来了解如何将Junit4包导入到工程内,新建完project类后操作如下:
在这里插入图片描述
在整个Learn工程上点击鼠标右键选择Build path 选项中的 Configure Build Path
在这里插入图片描述
完成后出现以下页面后点击页面右侧Add Library选项
在这里插入图片描述
出现如下界面后,选择JUnit后,单击next,选择JUnit 4 后完成添加。
在这里插入图片描述
添加完成后点击OK即可
在这里插入图片描述

三角形实验举例

三角形类(Triangle)对三角形形状判断,如非三角形(Illegal)、一般三角形(Scalene)、等腰三角形(Isosceles) 、等边三角形(Regular),借助JUnit工具,编写源代码和测试代码。

Triangle类代码如下:

package test;

public class Triangle {

	protected long lbordera=0;
	  protected long lborderb=0;
	  protected long lborderc=0;
	  //构造函数 
	  Triangle(long lbordera, long lborderb, long lborderc){
		    this.lbordera = lbordera;
	        this.lborderb = lborderb;
	        this.lborderc = lborderc;
	  }
	  //检测是否三角形 
	  public boolean isTriangle(){
		  boolean flag = false;
	        if((this.lbordera > 0 && this.lbordera < Long.MAX_VALUE) &&
	                (this.lborderb > 0 && this.lborderb < Long.MAX_VALUE) &&
	                (this.lborderc > 0 && this.lborderc < Long.MAX_VALUE)){
	            if((diffofBorders(this.lbordera, this.lborderb) < this.lborderc) &&
	                    (diffofBorders(this.lbordera, this.lborderc) < this.lborderb) &&
	                            (diffofBorders(this.lborderb, this.lborderc) < this.lbordera)){
	                        flag = true; 
	                    }
	        }
	       
	        return flag;
	  }
	  /*检测是否三角形形状,返回:Illegal、Scalene、Isosceles 、Regular*/
	  public String getType(){
		  String flag = "Illegal";
	       
	        if(isTriangle()){
	            if((this.lbordera == this.lborderb) &&
	                    (this.lborderb == this.lborderc)){
	                flag = "Regular";
	            }else if((this.lbordera != this.lborderb) &&
	                     (this.lbordera != this.lborderc) &&
	                     (this.lborderb != this.lborderc)){
	                flag = "Scalene";
	            }else{
	                flag = "Isosceles";
	            }
	        }
	        return flag;
	  }
	  //计算两边之差 
	  public long diffofBorders(long a,long b){
		  return (a > b)?(a-b):(b-a);
	  }
	
}


代码编写完成后,在Triangle 类上新建一个JUnit Test Case类对我们编写的代码进行简单测试。
在这里插入图片描述
点击完成后出现如下页面
在这里插入图片描述
点击next后
在这里插入图片描述

选择我们想要测试的方法后点击Finish完成,为什么不选择构造函数Triangle和计算diffofBorders方法,原因是我们在创建实例化对象时就会调用到构造函数,在测试选中的两个方法中,我们同样调用到了计算方法,所以我们不需要额外的测试。

TriangleTest 类初始代码如下:

package test;

import static org.junit.Assert.*;

import org.junit.Test;

public class TriangleTest {

	@Test
	public void testIsTriangle() {
		fail("Not yet implemented");
	}

	@Test
	public void testGetType() {
		fail("Not yet implemented");
	}

}

我们将其中的代码更改为:

package test;

import static org.junit.Assert.*;

import org.junit.Test;


public class TriangleTest {

	@Test
	public void testIsTriangle1() {
		Triangle t1 = new Triangle(6, 6, 6);
		assertTrue(t1.isTriangle());
	}
	
	@Test
	public void testIsTriangle2(){
		Triangle t2 = new Triangle(3, 4, 5);
		assertTrue(t2.isTriangle());
	}

	@Test
	public void testGetType1() {
		Triangle t3 = new Triangle(6, 6, 6);
		assertEquals("Regular",t3.getType());
	}
	
	@Test
	public void testGetType2(){
		Triangle t4 = new Triangle(5, 6, 6);
		assertEquals("Isosceles",t4.getType());
	}

}

在这里插入图片描述

至此实验完成。

  • 4
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值