复利计算单元测试

 1 @Test
 2     public void test() {//测试"复利计算终值"公式是否正确,计算结果与预想结果误差是否大于1
 3         double PresentValue=1000000.0;
 4         int year=30;
 5         double r=0.03;
 6         double FutureValue = 1;
 7         for (int i = 1; i <= year; i++) {
 8             FutureValue = (1 + r) * FutureValue;
 9             
10         }
11         float F=(float) (Math.round(FutureValue * PresentValue * 100)) / 100;
12         Assert.assertEquals(F, 2427262,1.0);//计算结果与预想结果误差是否大于1
13     } 
14     
15     @Test
16     public void test2() {//测试计算"复利计算本金"公式是否正确,计算结果与预想结果误差是否大于1
17         double FutureValue=3000000.0;
18         int year=10;
19         double r=0.03;
20         double PresentValue = 1;
21         for (int i = 1; i <= year; i++) {
22             PresentValue = (1 + r) * PresentValue;
23         }
24         float f=(float) (Math.round(FutureValue * (1 / PresentValue) * 100))/ 100;
25         Assert.assertEquals(f, 2232281,1.0);//计算结果与预想结果误差是否大于1
26     }
复制代码

 

 

这次做的单元只是测试了两个公式是否错误和计算结果与预期的差距是否在1以内,其他公式的测试以此类推。

其实发现自己代码bug挺多的,基础比较差,很多bug都不会修复,所以先测试最简单的部分,等后期比较完善后再测试一些其他内容。

posted @ 2016-04-01 10:47  33罗鑫  阅读(200)  评论(0编辑  收藏  举报