编程2——单元测试
码市:https://coding.net/u/lzx84/p/Calculation/git
组员:
201421123062 (林燕)
201421123084 (林至贤)
题目描述:
上一周大家为四则运算程序设计了2-3个新功能,本次在隔了一周之后,我们循序渐进地进阶。本次目标:
- 把计算模块提取出来,单独创建一个类。
- 针对提取出来的计算类的接口函数做单元测试。
需求分析:
- 对之前的各个计算方法进行单元测试。
测试过程:
使用eclipse中的JUnit4以及eclemma代码覆盖率插件。
一、测试加法方法:
以上代码全为绿色,表示测试成功。
将分子改为0,则报错。
二、测试比较方法:
三、测试减法方法:
四、测试乘法方法:
五、测试除法方法:
六、测试check方法:
七、测试CreatFrac方法:
八、测试GCD方法:
代码覆盖率:
测试结果分析
- 可以看出测试的覆盖达到85.5% ,几乎已经覆盖了需要的覆盖的所有方法。剩下的14.5%为Model模型包下的一些set,get等方法。
实现总结:
(1)遇到的问题:
对代码测试几乎不了解,在插件的安装上花费了很多时间,特别是代码覆盖率这一块。具体命令并不熟悉,花了时间研究了基本操作,也还有有挺多要求没有实现的。
基本上都是通过百度来获得解决的办法。
(2)体会和收获:
这次的实验让我体会到了,代码测试也有很是一种要点,以前完全没有用过这些测试功能,这次一用感觉作用还是很大的,比如说查看代码覆盖率可以找到存在的书写不合理或者冗余的代码,使编程更加规范。但是对测试还不是很懂,感觉真的学的挺吃力的,可能在这方面没有天赋。
(3)合作感受:
这次的合作,主要是测试,因为这一块比较生疏,之前都没有接触过,要开始学习,队友也重新学习,但是队友的学习效率比我高,学的也快,我有点跟不上他,有的点不是很理解,通过队友真的还是懂了蛮多。有都不懂的地方一起研究,会更快解决,这就是合作的好处。以后要提高学习效率,多向他人学习。
结对照片:
我和我的队友依旧是通过远程屏幕共享,语音通话的方式进行结对编程,以下为截屏图片:
PSP:
PSP2.1 |
Personal Software Process Stages |
Time Senior Student |
Time |
Planning |
计划 |
||
· Estimate |
估计这个任务需要多少时间 |
8h |
9h |
Development |
开发 |
||
· Analysis |
需求分析 (包括学习新技术) |
1h |
1h |
Design Spec |
生成设计文档 |
||
· Design Review |
设计复审 |
||
· Coding Standard |
代码规范 |
0.5h |
0.5h |
· Design |
具体设计 |
||
· Coding |
具体编码 |
1h |
1h |
· Code Review |
代码复审 |
0.5h |
0.5h |
· Test |
测试(自我测试,修改代码,提交修改) |
3h |
2.5h |
Reporting |
报告 |
1h |
1.5h |
· |
测试报告 |
||
· |
计算工作量 |
||
· |
并提出过程改进计划 |