**
单元测试Junit:java unit java的单元测试
**
Junit是一个大家公认的而且广泛使用的一个测试框架
测试的功能是由Junit测试框架提供的,要是用这个框架就需要引入框架的支持(支撑)jar包
jar包:是java中的一种特殊格式的压缩包,
jar包中压缩的内容是java编译完成的类(.class文件)
把jar包提供给任何人使用都可
一般情况下jar是由某个项目导出成一个jar,并将jar包提供给需要的项目使用
项目可以依赖项目,也可以依赖jar包
导出jar包的步骤:右键单击要导出jar包的项目名称—>export—>java—>jar file—>next—>输入jar文件的路径和文件名—>finish
导出jar包到某个项目中:右键单击需要jar包的项目名称—>属性—>java buildpath—>libraries选项卡—>a.add external jars:选择本地硬盘中的jar包—>OK
b.add library:ellipse中自带的Junit
为什么需要单元测试:因为程序员有义务把自己写的代码进行测试,尽量保证程序的正确性
单元测试版本分为:Junit 3:
Junit 4:
Junit 5:
单元测试中的名词:断言:assert
断:断定.
言:动词:表达.名词:话语或语言的意思
能够清晰准确的表达一个结果是正确的
Junit3:测试类放在test源代码文件夹(source folder)当中
测试类必须继承自TestCase类 Junit.framework.TestCase
测试类中的方法名称必须以test开头
比如:public void testMethod(){}
测试类中重写protected void setUp()throws Exception
此方法是在执行任何一个测试方法的时候都要先调用setup方法,setup方法适合在执行测试方法前做一些初始化工作
tearDown方法是在最后调用的方法,用来执行销毁工作
Junit4:测试类放在test源代码文件夹中,测试不需要继承任何类
在测试方法的前面添加一个注解@Test,测试方法的命名任意,但建议还是test开头
如果在某个方法的前面加一个注解@Before,那么此方法就在任何测试方法执行前执行,一般做初始化工作
//先定义一个测试方法
public class AA {
public int add(int a,int b){
return a+b;
}
}
//进行测试
package www.lxk.day12.demo1;
import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
public class TestClass {
@Before
public void beforeMethod(){
System.out.println("初始化");
}
@After
public void afterMethod(){
System.out.println("销毁");
}
@Test
public void method1(){
System.out.println("testMethod1");
AA aa=new AA();
int actual=aa.add(1, 2);
Assert.assertEquals(3, actual);
}
@Test
public void method2(){
System.out.println("testMethod2");
}
}