Junit单元测试笔记

JUnit是用于编写和运行测试的开源java框架,如下特点:

1、提供了注释,以确定测试方法,常用注解有@Test、@Before、@BeforeClass、@After、@AfterClass等

@Test
public void method() 测试注释指示该公共无效方法它所附着可以作为一个测试用例。
     @Before
public void method() Before注释表示,该方法必须在类中的每个测试之前执行,以便执行测试某些必要的先决条件。
    @BeforeClass
public static void method() BeforeClass注释指出这是附着在静态方法必须执行一次并在类的所有测试之前。发生这种情况时一般是测试计算共享配置方法(如连接到数据库)。
    @After
public void method() After 注释指示,该方法在执行每项测试后执行(如执行每一个测试后重置某些变量,删除临时变量等)
    @AfterClass
public static void method() 当需要执行所有的测试在JUnit测试用例类后执行,AfterClass注解可以使用以清理建立方法,(从数据库如断开连接)。注意:附有此批注(类似于BeforeClass)的方法必须定义为静态。
    @Ignore
public static void method() 当想暂时禁用特定的测试执行可以使用忽略注释。每个被注解为@Ignore的方法将不被执行。


2.提供断言测试预期结果

void assertEquals([String message], expected value, actual value) 断言两个值相等。值可能是类型有 int, short, long, byte, char or java.lang.Object. 第一个参数是一个可选的字符串消息
void assertTrue([String message], boolean condition) 断言一个条件为真
void assertFalse([String message],boolean condition) 断言一个条件为假
void assertNotNull([String message], java.lang.Object object) 断言一个对象不为空(null)
void assertNull([String message], java.lang.Object object)         断言一个对象为空(null)
void assertSame([String message], java.lang.Object expected, java.lang.Object actual)         断言,两个对象引用相同的对象
void assertNotSame([String message], java.lang.Object unexpected, java.lang.Object actual) 断言,两个对象不是引用同一个对象
void assertArrayEquals([String message], expectedArray, resultArray)                                         断言预期数组和结果数组相等。数组的类型可能是 int, long, short, char, byte or java.lang.Object.

3.JUnit测试可以自动运行,检查自己的结果,并提供即时反馈。没有必要通过测试结果报告来手动梳理。Junit显示测试进度的,如果测试是没有问题条形是绿色的,测试失败则会变成红色。

4.JUnit测试可以组织成测试套件包含测试案例,甚至其他测试套件。“套件测试”是指捆绑了几个单元测试用例并运行起来。在JUnit中,@RunWith 和 @Suite 这两个注解是用来运行套件测试。

import org.junit.runner.RunWith;
import org.junit.runners.Suite;

@RunWith(Suite.class)
@Suite.SuiteClasses({ MyTest.class, MyTest2.class })
public class SuitTest  {

}


猜你喜欢

转载自blog.csdn.net/android_gogogo/article/details/76152601