package day20151021junit2;
public class Calc {
private int a,b;
public Calc (){
}
public int add (){
return a + b;
}
public int getA () {
return a;
}
public void setA (int a) {
this .a = a;
}
public int getB () {
return b;
}
public void setB (int b) {
this .b = b;
}
}
package day20151021junit2;
import junit.framework.TestCase;
/**
* TestCase类
*/
public class CalcTest1 extends TestCase {
Calc c = new Calc();
/**
* 测试用例中的setup()方法会在测试逻辑最先调用。
* 就相当于做初始化工作。
* (做一些前提条件的设置)
*/
protected void setUp () throws Exception{
c.setA(2 );
c.setB(1 );
}
/**
* 测试用例中的tearDown() 方法在测试逻辑之后调用。
* 可用于释放一些资源
* 充当一个清理战场的角色,以清楚测试过程中对现场的状态的破坏。
* 本例中没有测试垃圾,因此tearDown() 实际上可以不用写。
*/
protected void tearDown () throws Exception{
c=null ;
}
public void testAdd (){
int result = c.add();
assertEquals(3 ,result,0 );
}
}
package day20151021junit2;
import junit.framework.TestCase;
public class CalcTest2 extends TestCase {
Calc c = new Calc();
protected void setUp (){
c.setA(2 );
c.setB(1 );
}
protected void tearDown (){
c=null ;
}
public void testAdd (){
int result = c.add();
assertEquals(4 ,result,0 );
}
}
package day20151021junit2;
import junit.framework.Test;
import junit.framework.TestSuite;
/**
* 生成测试单元(右键run as JUnit Test)
*/
public class AllTests {
public static Test suite (){
TestSuite suite = new TestSuite("Test for default package" );
suite.addTestSuite(CalcTest1.class);
suite.addTestSuite(CalcTest2.class);
return suite;
}
}