首页 > 代码库 > 结对编程2——单元测试

结对编程2——单元测试

结对成员:201421123079 肖荣森                201421123081 苏上鑫

Coding地址:https://coding.net/u/theouts/p/javaUnit/git

  •  需求分析:测试上有哪些详细的需求?

a)     把计算模块提取出来,单独创建一个类。

b)     针对提取出来的计算类的接口函数做单元测试。

  • 设计测试框架, 模拟测试数据:

A.测试环境:项目以java语言进行开发,使用junit4进行测试

B.测试数据

1.整数的加减乘除

 技术分享

 

2.输入符号错误

 技术分享

3.数据溢出(没有溢出)

技术分享

 

4.除数为零(12/0)

 技术分享

5.结果为-1

 技术分享

C.calc代码

public class CalcFunction {
    String result="there is something wrong!-1";
    public void calc(int a, int b, char c) {
        if(c==‘+‘) add(a,b);
        else if(c==‘-‘) substract(a,b);
        else if (c==‘*‘)multiply(a,b);
        else if (c==‘/‘)divide(a,b);
        else System.out.println("please input correct symbol!");
    }
    
     public void add(int a,int b)
        {
         result =a + b +"";
        }
     public void substract(int a,int b)
        {
         result =a - b + "";
        }
        public void multiply(int a,int b)
        {
             result =a * b + "";
        }
        public void divide(int a,int b)
        {
            if(b!=0) result =a / b + "";
            else System.out.println("error!Divisor cannot be zero!");
        }
    
        public String getResult()
        {
            return result;
        } 
    
}

 

 

  •  小结与感受:通过测试,是否有效发现了程序计算模块的问题,并给予改进?

1.由于函数定义的calc(int,int,char),所以不存在输入为++的情况

2.虽然定义的是int型,但是不明白为什么输入为add(10000,32768)时居然没有溢出

3.由于函数定义原因,如果输入类似于add(a,b),则测试出现错误

 

  •  在隔了一周之后再看之前的代码,是否更能体会到下面这些东西

(1) 良好的设计
之前的代码模块设计很不好,想到哪写到哪,很多东西参杂在一起,应该明确分出各个模块功能

(2) 编码规范
明明不规范,格式在eclipse中可以直接用快键键对齐,所以写的过程中没有注意

(3) 必要的注释
没有写注释的习惯。。。这个应该改成

  • 提供此次结对作业的PSP。

PSP2.1

Personal Software Process Stages

Estimated Time(hour)

Actual Time (hour)

Planning

计划

0.5

0.5

Estimate

估计这个任务需要多少时间

0.5

0.5

Development

开发

5

5

Analysis

需求分析 (包括学习新技术)

0.2

0.2

Design Spec

生成设计文档

0.3

0.2

Design Review

设计复审

0.3

0.3

Coding Standard

代码规范

0.1

0.1

Design

具体设计

1

1

Coding

具体编码

2

2

Code Review

代码复审

0.1

0.1

Test

测试(自我测试,修改代码,提交修改)

1

1

Reporting

报告

0.5

0.5

·

测试报告

0.1

0.1

·

计算工作量

0.1

0.1

·

并提出过程改进计划

0.3

0.3

结对编程2——单元测试