复利计算单元测试

测试模块 测试输入 预期结果 运行结果
deposit(i,n,p) (100000,0.75,100)  √
deposit(i,n,p) (100,250,100) 返回false 返回false
deposit(i,n,p) (-1,0.1,100) 返回false 返回false
deposit(i,n,p) (0,100,0) 返回false 返回false
测试模块 测试输入 预期结果 运行结果
principal(i, n, f) (0.66,10,500000)  √
principal(i, n, f) (0,100,5000) 返回false 返回false
principal(i, n, f) (100,250,100) 返回false 返回false
principal(i, n, f) (500,-1,100) 返回false 返回false

以上是程序其中两个函数的是否可以输入非法数字相关测试,另外三个函数的测试方法类似。

部分测试代码如下: 

    public void test1() {
            fulijisuan_4 fuli = new fulijisuan_4();           
            assertEquals(false, fuli.deposit(500,-1,100));           
    } 

运行结果:

 

因为没有找到Junit4测试数据偏差的方法,所以数据偏差只能自己手动来测。

还有一个测试是否可以不输入数字直接点击“计算”按钮的,代码如下:

    @org.junit.Test
    public void test1() {
            fulijisuan_4 fuli = new fulijisuan_4();        
            MouseEvent event = null;
            fuli.jButton0MouseMouseClicked(event);
           
    } 

测试结果:弹出提示窗口

这次为了写单元测试将前面的代码改动的较多,更深的体会到了代码进化成可应用程序的艰辛。

原文地址:https://www.cnblogs.com/jinyechutao11/p/5339071.html