结对作业2-单元测试
成员:陈鑫龙(201421123078)、何跃斌(201421123082)

码市地址:https://coding.net/u/ybsnn/p/union_test/git
一、需求分析
1.绝大部分软件都是多人合作完成的,自己写的模块会被其他人调用,因而需要单元测试,让自己负责的模块功能定义尽量明确。
2.这次是将上次结对作业四则运算的计算模块进行提取,以供测试使用。
二、抽出上次作业的计算模块
原来的计算方法

1.创建Calc类,有属性num1,num2


2.构造处理字符串型的运算数静态函数splitnum

3.构造自动生成测试函数

4.构造手动输入测试函数

三、测试过程
JUnit测试结果

1.加法测试:

最后两个有报错提示:运算符只能有一个,在{+,-,×,÷}中选择。

2.减法测试

同样:最后两个有报错提示:运算符只能有一个,在{+,-,×,÷}中选择。

3.乘法测试

同样:最后两个有报错提示:运算符只能有一个,在{+,-,×,÷}中选择。

4.除法测试

最后一项有提示

5.其他测试

有一个输入有误就提示,两个数都有误的话,将这两个数都设为1,参与运算。

6.自动生成测试

结果:

覆盖率测试

四、遇到的问题
1.设计计算类的时候考虑不周,传递的参数只能是自己构造的分数类对象,测试的时候得再写方法改变传参对象为字符串,在这个方法里调用原先的方法,效率太低。
2.先前定义运算数为int型,把可算范围圈小了;还有只定义两个运算数,限制了程序的可拓展性。
五、小结
写程序不会是一劳永逸,但是不能为了当前的便利,不顾及改进,随意定义,限定程序的发展空间。
六、PSP
| PSP2.1 | Personal Software Process Stages | Time Senior Student | Time |
|---|---|---|---|
| Planning | 计划 | ||
| · Estimate | 估计这个任务需要多少时间 | 10h | 11h |
| Development | 开发 | ||
| · Analysis | 需求分析 (包括学习新技术) | 1h | 2h |
| Design Spec | 生成设计文档 | ||
| · Design Review | 设计复审 | ||
| · Coding Standard | 代码规范 | 2h | 1h |
| · Design | 具体设计 | ||
| · Coding | 具体编码 | 1h | 2h |
| · Code Review | 代码复审 | 0.6h | 1h |
| · Test | 测试(自我测试,修改代码,提交修改) | 2.5h | 1.5h |
| Reporting | 报告 | 2h | 2.5h |
| · | 测试报告 | ||
| · | 计算工作量 | ||
| · | 并提出过程改进计划 |
浙公网安备 33010602011771号