结对编程2——单元测试
2017-03-29 21:34
211 查看
Coding地址:https://coding.net/u/wumingxiang/p/JUnit-szys/git
结对伙伴:201421123058(本人)和201421123059(队友)
题目描述
上一周大家为四则运算程序设计了2-3个新功能,本次在隔了一周之后,我们循序渐进地进阶。本次目标:1.把计算模块提取出来,单独创建一个类。
2.针对提取出来的计算类的接口函数做单元测试。
题目要求
1.结对编程实现上述功能,同样的,在程序正式开发之前,请先预估下PSP每个环节的消耗时间(分钟),并在过程中统计实际耗时(分钟),最后提交PSP表格。2.继续两人结对协作,把编码规范、领航员和驾驶员角色互换做到位。
3.单元测试: 有单元测试保证,有代码覆盖率。
需求分析
1.通过单元测试代码,测试加法是否能正确工作;2.通过单元测试代码,测试加减乘除功能。
3.通过单元测试代码,测试计算类对于各种参数的支持:
单元测试
1.通过单元测试代码,测试加法是否能正确工作;![](https://images2015.cnblogs.com/blog/1113465/201703/1113465-20170329211540686-1597219269.png)
2.通过单元测试代码,测试加减乘除功能。
![](https://images2015.cnblogs.com/blog/1113465/201703/1113465-20170329211551842-879585342.png)
代码覆盖率
![](https://images2015.cnblogs.com/blog/1113465/201703/1113465-20170329211638904-1428490916.png)
3.通过单元测试代码,测试计算类对于各种参数的支持:
下面测试了两种情况:
a.在数值范围是 -1000 .. 1000 的时候,传进去 “10000 + 32768”,
b. “ 248 / 0”
![](https://images2015.cnblogs.com/blog/1113465/201703/1113465-20170329213002717-2018937512.png)
从中可以看出,传入异常参数会出现错误,正常的就不会。
团队合作
![](https://images2015.cnblogs.com/blog/1113465/201703/1113465-20170329205635498-632063327.jpg)
PSP
![](https://images2015.cnblogs.com/blog/1113465/201703/1113465-20170329210339358-285014070.png)
小结
在隔了一周之后再看之前的代码,是否更能体会到下面这些东西(1) 良好的设计
良好的设计对一个程序来说,是非常重要的,在之前的代码里,我们没有做好设计,许多功能交织在一起,过一段时间后,自己看起代码也很费力,现在把每个功能单独拆分成一个类,看起来就一目了然。
(2) 编码规范
编码规范也是写程序的重点,特别是团队合作的时候,队友之间没有做好规范,可能就会出现错误。
(3) 必要的注释
必要的注释可以帮我们理解代码,特别是我们在隔了很长时间后再来看自己的代码。
总结:
对于单元测试这一方面的内容一开始不是很熟悉,通过网络查了许多资料,我也掌握了一些基本的方法,通过单元测试,可以帮助我们找出在程序中的Bug,这是我们应该掌握的一项技能。在团队方面,这也是第二次结对编程了,比较有默契,合作的效率也有所提高。汉堡包式评价:
先来一片面包:第二次合作,两人更加默契了。再放上肉:队友的缺点就是知识面不够丰富,希望能够去深入学习。
再来一片面包:做事很认真,实验过程中也给了我很多帮助。