单元测试:复利计算

Posted 57容杰龙

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了单元测试:复利计算相关的知识,希望对你有一定的参考价值。

测试要求:

   对我们和复利计算程序,写单元测试。 

   有哪些场景?

   期待的返回值

   写测试程序。

   运行测试。

1.源代码:https://github.com/rongjielong/rongjielong/blob/master/calculate/src/exercise.java

2.测试代码:https://github.com/rongjielong/rongjielong/tree/master/calculate/src/test

3.测试示例:

  (1)判断输入是否正确:

 1 package test;
 2 
 3 
 4 public class A {
 5     boolean test1(int select){
 6 
 7             System.out.println("请问您想要进行单利计算还是复利计算:1.单利 2.复利");
 8             if(select != 1 && select != 2)
 9                 return false;
10             else
11                 return true;
12     
13     }
14 }
 1 package test;
 2 
 3 import static org.junit.Assert.*;
 4 
 5 import org.junit.Before;
 6 import org.junit.Test;
 7 
 8 public class ATest {
 9     A a1=new A();
10     @Before
11     public void setUp() throws Exception {
12     }
13 
14     @Test
15     public void test() {
16         
17         assertTrue (a1.test1(2));
18     }
19 
20 }

技术分享

 

  (2)判断数据计算是否正确:

 1 package test;
 2 
 3 public class E {
 4     public double test5(double sumValue,double rate,int year){
 5         for (int i = 1; i <= year; i++) {
 6             sumValue = sumValue / (1 + rate);
 7 
 8         }
 9         double originalMoney = sumValue;
10         System.out.println("需要本金" + originalMoney + "元");
11         return originalMoney;
12     }
13 
14 }
 1 package test;
 2 
 3 import static org.junit.Assert.*;
 4 
 5 import org.junit.Before;
 6 import org.junit.Test;
 7 
 8 public class ETest {
 9     E e1=new E();
10     @Before
11     public void setUp() throws Exception {
12     }
13 
14     @Test
15     public void test() {
16         assertEquals(86383.76,e1.test5(100000, 0.05, 3),0.05);
17     }
18 
19 }

技术分享

 

其余测试代码详情请点击:https://github.com/rongjielong/rongjielong/tree/master/calculate/src/test

 

 

测试总结:

     第一次用到Junit测试,虽然不是很了解,但是也体会到它的好处。Junit里面提供了比较多的方法,需要我们逐一揣摩。通过单元测试,我发现自己原来写的代码比较乱,没什么条理,原来的代码是将整个程序写在一个方法里,测试起来很不方便,怪不得提倡要分开java类以及提取方法的方式开发软件了,所以我在测试过程中拆分了自己原来的代码,分成了几个类以及几个方法,逐一测试。并且,在测试过程中,发现程序会发生异常,例如,int year;当我们输入浮点型数据或者英文字母或者其他的非整形数据,那么我们的实际结果就与预期结果不一致,从而引发错误。因此,单元测试的确是一个自我发现bug的好方法。

 

以上是关于单元测试:复利计算的主要内容,如果未能解决你的问题,请参考以下文章

0329单元测试--复利计算器(组员:冯铭杰 梁毅乾)

软件工程实验一 复利计算——单元测试

复利计算器单元测试

复利计算单元测试

复利计算单元测试

0330复利计算4.0单元测试