My复利计算程序测试报告
4.0 单元测试-----------------------------
要求:
对我们和复利计算程序,写单元测试。
有哪些场景?
期待的返回值
写测试程序。
运行测试。
完成结果:
测试一:复利计算本息
1.期待的返回值是143004,实际值是143004.6710959476,允许有1以内的误差。
2.测试程序:
1 package one;
2 import org.junit.Assert;
3 import org.junit.Before;
4 import org.junit.Test;
5 public class TestCalcuate {
6 Calcuate cal;
7 @Before
8 public void setUp()
9 {
10 cal =new Calcuate();
11 }
12 @Test
13 public void testadd()
14 {
15 double amount = 10000 ;
16 double rate =0.03 ;
17 double year =10;
18 amount = amount * Math.pow(1.0 + rate, year);
19 Assert.assertEquals(143004, 143004.6710959476, 1.0);
20 }
21 }
当测试误差允许1.0以内时,测试成功,测试结果如图:

当误差精确到0.0时,测试实际值和期待值不符,显示测试错误。
单利计算的过程和复利相似。只附上图片:
测试二:时间的测试
期待的返回值是23,实际值是23.449772250437736,当误差在1以内时,测试成功。
测试程序:
package one;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
public class TestCalcuate {
Calcuate cal;
@Before
public void setUp()
{
cal =new Calcuate();
}
@Test
public void testadd()
{
double rate =0.03 ;
double amount2 =40000;
double amount1=20000;
double time;
time= (Math.log(amount2/amount1)/Math.log(1+rate));
Assert.assertEquals(23, 23.449772250437736, 1.0);
}
}
测试成功如图:
当允许出现的误差为0时,测试错误,如图:
其他测试也类似。