My複利計算程式測試報告

39賴文亮1發表於2016-03-28

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時,測試錯誤,如圖:

 

其他測試也類似。

相關文章