第二步:将JUnit4单元测试包引入这个项目中
第三步,生成JUnit测试框架,之后系统会自动生成一个新类CoreTest,再根据情况完善CoreTest类里面的代码,完整的CoreTest代码如下:
import static org.junit.Assert.*; import org.junit.Before; import org.junit.Test; public class CoreTest { private static Core core=new Core(); @Before public void setUp() throws Exception { } @Test public void testFhum1() { core.Fhum1(3, 5, '+'); assertEquals(8,core.getResult()); fail("尚未实现"); } @Test public void testFhum2() { core.Fhum2(3, 5, 2, '*', '+'); assertEquals(17,core.getResult()); fail("尚未实现"); } @Test public void testFhum3() { core.Fhum3(5, 3, 2, 4, '+','-' , '+'); assertEquals(10,core.getResult()); fail("尚未实现"); } } |
最后,进行测试,结果如下:
白盒测试:
实验总结:
在一开始拿到的是自己完全不熟悉的代码,要先把小伙伴的代码看熟悉, 觉得代码比较混乱,不知道怎么去改比较好,运行中发现了几个可以改进的地方如下:
1.一开始运行的时候,弹出的框里面什么东西都没有,需要先最小化再放大才可以看到界面提示。
2.选择题目数大于5题的时候会自动退出程序,个人觉得可以先给个提示或者删除此功能。
3.做完一道题时按确定要重新按开始答题才可以再次答题,答完题目后直接就退出框,一开始不熟悉程序的时候感觉不知道按哪里。
4.代码缺少对分数的考虑,如5/3答案直接为1,可以将随机数强制转换为浮点型。
做单元测试中,发现两个运算符的这部分算法有问题,但是不知道怎么去改,也不知道看哪里提示问题在哪里,感觉很茫然,无从下手。
黑白盒的测试中,我负责的是白盒测试,但是觉得对这个黑白盒其实不是特别了解,老师上课讲了一下也没有听懂,做作业的时间比较短,我个人觉得白盒子就是对算法源代码的流程分析,黑盒子就是程序的改进结果。