被测试的类
public class Operation {
public int add(int x, int y){
int z = x + y;
return z;
}
public int sub(int x, int y){
int z = x - y;
return z;
}
}
常用的注解
在测试的方法上加上@Test,此时会变红,把光标定位到@Test上,按Alt + Enter,点击OK,会自动下载jar包
public class OperationTset {
Operation operation = new Operation();
/*
//每次的对象都不一样
//测试的每个方法前,都执行before注解下的代码
@Before
public void methodBefore(){
operation = new Operation();
System.out.println("before");
}
//测试的每个方法前,都执行after注解下的代码
@After
public void methodAfter(){
System.out.println("after");
}
*/
//测试方法之前执行一次
//@BeforeClass,加此注解的时候,方法必须是静态的,因为是在所有方法之前执行,用类名调用的
@BeforeClass
public static void before() {
System.out.println("...................before");
}
//测试方法之后执行一次
@AfterClass
public static void after() {
System.out.println("....................after");
}
@Test
public void testAdd(){
int add = operation.add(10, 20);
System.out.println("add = " + add);
//断言,判断
Assert.assertEquals(30, add);
}
@Test
public void testSub(){
int sub = operation.sub(20, 10);
System.out.println("sub = " + sub);
Assert.assertEquals(10, sub);
}
}
注意:
①测试方法上必须使用@Test进行修饰
②测试方法必须使用public void 进行修饰,不能带任何的参数
③新建一个源代码目录来存放我们的测试代码,即将测试代码和项目业务代码分开
④测试类所在的包名应该和被测试类所在的包名保持一致
⑤测试单元中的每个方法必须可以独立测试,测试方法间不能有任何的依赖
⑥测试类使用Test作为类名的后缀(不是必须)
⑦测试方法使用test作为方法名的前缀(不是必须)