我写了如下的一个类:importjava.math.BigDecimal;publicclassDecimalClass{publicBigDecimaladdFloat(floatf1,floatf2){BigDecimalfb1=newBigDecimal(f1);BigDecimalfb2=newBigDecim...

我写了如下的一个类:

import java.math.BigDecimal;

public class DecimalClass {

public BigDecimal addFloat(float f1, float f2) {

BigDecimal fb1 = new BigDecimal(f1);

BigDecimal fb2 = new BigDecimal(f2);

fb1.add(fb2);

return fb1;

}

public BigDecimal subFloat(int f1, int f2) {

BigDecimal fb1 = new BigDecimal(f1);

BigDecimal fb2 = new BigDecimal(f2);

if(fb1.compareTo(fb2)>0) {

return fb1.subtract(fb2);

} else {

return fb2.subtract(fb1);

}

}

}

然后用Junit测试 测试类如下

package edu.hunnu.demo.test;

import java.math.BigDecimal;

import junit.framework.TestCase;

import org.junit.Ignore;

import org.junit.Test;

import edu.hunnu.demo.DecimalClass;

public class DecimalClassTest extends TestCase{

private DecimalClass dec;

public void setup() {

dec = new DecimalClass();

}

@Test

public void testAddFloat() {

float f1 = 150.00f;

float f2 = 100;

float expect = 250.00f;

BigDecimal bd = dec.addFloat(f1, f2);

System.out.print("bd's value after add: "+bd);

assertEquals(expect, bd.floatValue(),0.1f);

}

@Ignore

public void testSubFloat() {

int f1 = 100;

int f2 = 150;

BigDecimal bd = dec.subFloat(f1, f2);

System.out.print("bd's value after substract: "+bd);

assertEquals(50, bd.intValue());

}

}

想请教的是为什么会两个测试都是讨厌的red,请指出问题原因并给出正确的测试类,感激不尽!!

我找到原因了,setup的u字母没有大写。郁闷啊 !!!

展开

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐