JUnit中常见的注解和断言方法
来源:互联网 发布:淘宝策划部工资 编辑:程序博客网 时间:2024/05/22 02:04
在本支持在JUnit4基本注释,下表列出了这些注释的概括:
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的方法将不被执行。
package com.yiibai.junit;import static org.junit.Assert.*;import java.util.*;import org.junit.*;public class AnnotationsTest {private ArrayList testList;@BeforeClasspublic static void onceExecutedBeforeAll() {System.out.println("@BeforeClass: onceExecutedBeforeAll");}@Beforepublic void executedBeforeEach() {testList = new ArrayList();System.out.println("@Before: executedBeforeEach");}@AfterClasspublic static void onceExecutedAfterAll() {System.out.println("@AfterClass: onceExecutedAfterAll");}@Afterpublic void executedAfterEach() {testList.clear();System.out.println("@After: executedAfterEach");}@Testpublic void EmptyCollection() {assertTrue(testList.isEmpty());System.out.println("@Test: EmptyArrayList");}@Testpublic void OneItemCollection() {testList.add("oneItem");assertEquals(1, testList.size());System.out.println("@Test: OneItemArrayList");}@Ignorepublic void executionIgnored() {System.out.println("@Ignore: This execution is ignored");}}
如果我们运行上面的测试,控制台输出将是以下几点:
@BeforeClass: onceExecutedBeforeAll@Before: executedBeforeEach@Test: EmptyArrayList@After: executedAfterEach@Before: executedBeforeEach@Test: OneItemArrayList@After: executedAfterEach@AfterClass: onceExecutedAfterAll
断言方法,所有这些方法都受到 Assert 类扩展了java.lang.Object类并为它们提供编写测试,以便检测故障。下表中有一种最常用的断言方法的更详细的解释,这些方法是Assert类的静态方法。
package com.yiibai.junit;import static org.junit.Assert.*;import org.junit.Test;public class AssertionsTest {@Testpublic void test() {String obj1 = "junit";String obj2 = "junit";String obj3 = "test";String obj4 = "test";String obj5 = null;int var1 = 1;int var2 = 2;int[] arithmetic1 = { 1, 2, 3 };int[] arithmetic2 = { 1, 2, 3 };assertEquals(obj1, obj2);assertSame(obj3, obj4);assertNotSame(obj2, obj4);assertNotNull(obj1);assertNull(obj5);assertTrue(var1 var2);assertArrayEquals(arithmetic1, arithmetic2);}}
在以上类中我们可以看到,这些断言方法是可以工作的。
- assertEquals() 如果比较的两个对象是相等的,此方法将正常返回;否则失败显示在JUnit的窗口测试将中止。
- assertSame() 和 assertNotSame() 方法测试两个对象引用指向完全相同的对象。
- assertNull() 和 assertNotNull() 方法测试一个变量是否为空或不为空(null)。
- assertTrue() 和 assertFalse() 方法测试if条件或变量是true还是false。
- assertArrayEquals() 将比较两个数组,如果它们相等,则该方法将继续进行不会发出错误。否则失败将显示在JUnit窗口和中止测试。
阅读全文
0 0
- JUnit中常见的注解和断言方法
- JUnit---(断言和注解)
- JUnit 断言和注解
- junit常见断言
- JUnit常用断言及注解
- JUnit常用断言及注解
- JUnit常用断言及注解
- junit中的断言方法
- JUnit常用断言方法
- JUnit断言方法
- Junit 断言方法
- JUnit断言方法
- JUnit的各种断言
- JUnit的各种断言
- JUnit的各种断言
- jUnit 的断言
- JUnit的各种断言
- JUnit的各种断言
- 魔法方法:属性访问
- (转)智能投顾面临的法律合规问题及国际监管经验
- 3、明明的随机数
- http前端缓存(二)
- Tomcat学习总结(8)—— Tomcat常见面试题
- JUnit中常见的注解和断言方法
- LIS
- Git基本命令
- java Excel导出功能
- 构造方法,类和对象的关系......
- C++ String的传统和现代写法的深拷贝
- mysql 数据库安装
- 文件的管理
- 轻松学,听说你还没有搞懂 Dagger2