对一段Java代码的单元测试

  
public class Student  
{  
  
    private String name;  
    private String sex;  
    private int high;  
    private int age;  
    private String school;  
      
    public Student(String name, String sex ,int high, int age, String school)  
    {  
        this.name = name;  
        this.sex = sex;  
        this.high = high;  
        this.age = age;  
        this.school = school;  
    }  
    public String getName()  
    {  
        return name;  
    }  
    public void setName(String name)  
    {  
        this.name = name;  
    }  
    public String getSex()  
    {  
        return sex;  
    }  
    public void setSex(String sex)  
    {  
        this.sex = sex;  
    }  
    public int getHigh()  
    {  
        return high;  
    }  
    public void setHigh(int high)  
    {  
        this.high = high;  
    }  
    public int getAge()  
    {  
        return age;  
    }  
    public boolean setAge(int age)  
    {  
        if (age >25)  
        {  
            return false;  
        }  
        else  
        {  
            this.age = age;  
            return true;  
        }                 
    }  
      
  
    public String getSchool()  
    {  
        return school;  
    }  
    public void setSchool(String school)  
    {  
        this.school = school;  
    }  
      
} 

 

  

在eclipse下单元测试这个类:  

首先导入Junit包:选中java工程,点击鼠标右键--->选择properties---->在窗口中选Java Build Path---->在右侧点击Add Library---->在弹出的窗口列表中选中Junit---->下一步----->Junit 4---->finish

 

测试类1 2

package com.phicomme.test;  
  
import com.phicomme.hu.Student;  
  
import junit.framework.TestCase;  
  
public class StudentTest01 extends TestCase  
{  
  
    Student testStudent;  
    //此方法在执行每一个测试方法之前(测试用例)之前调用  
    @Override  
    protected void setUp() throws Exception  
    {  
        // TODO Auto-generated method stub  
        super.setUp();  
        testStudent = new Student("djm", "boy", 178, 24, "XX大学");  
        System.out.println("setUp()");  
    }  
  
    //此方法在执行每一个测试方法之后调用  
    @Override  
    protected void tearDown() throws Exception  
    {  
        // TODO Auto-generated method stub  
        super.tearDown();  
        System.out.println("tearDown()");  
    }  
  
    //测试用例,测试Person对象的getSex()方法  
    public void testGetSex()  
    {  
        assertEquals("boy", testStudent.getSex());  
        System.out.println("testGetSex()");  
    }  
      
    //测试Person对象的getAge()方法  
    public void testGetAge()  
    {  
        assertEquals(24, testStudent.getAge());  
        System.out.println("testGetAge()");  
    }  
}  

package com.phicomme.test;  
  
import junit.framework.TestCase;  
  
import com.phicomme.hu.Student;  
  
public class StudentTest extends TestCase  
{  
  
    private Student testStudent;  
      
    @Override  
    protected void setUp() throws Exception  
    {  
        // TODO Auto-generated method stub  
        super.setUp();  
        testStudent = new Student("steven_hu", "boy", 170 , 23, "XX大学");  
    }  
  
    @Override  
    protected void tearDown() throws Exception  
    {  
        // TODO Auto-generated method stub  
        super.tearDown();  
    }  
  
    public void testSetage()  
    {  
        assertTrue(testStudent.setAge(21));  
    }  
      
    public void testGetSchool()  
    {  
        //预期值和实际值不一样,测试时出现失败(Failure)  
        assertEquals("XX大学", testStudent.getSchool());  
    }  
      
    public void testGetName()  
    {  
        assertEquals("hdy", testStudent.getName());  
    }  
}  

 

StudentTest类的测试结果图:

 

StudentTest01类的测试结果图:

posted @ 2016-09-10 10:09  LN_8242  阅读(3836)  评论(0编辑  收藏  举报