码市: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 |
· | 测试报告 | ||
· | 计算工作量 | ||
· | 并提出过程改进计划 |