• JUnit断言


    在本节中,我们将介绍一些断言方法。所有这些方法都受到 Assert 类扩展了java.lang.Object类并为它们提供编写测试,以便检测故障。下表中有一种最常用的断言方法的更详细的解释。

    断言描述
    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.

     让我们看的一些前述断言的一个例子。

    AssertionsTest.java

    package com.yiibai.junit;
    
    import static org.junit.Assert.*;
    import org.junit.Test;
    
    public class AssertionsTest {
    
    	@Test
    	public 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窗口和中止测试。
  • 相关阅读:
    elasticsearch
    超人学院课课程体系
    51cto大数据培训路线
    关于举办大数据处理技术培训的通知
    “大数据分析高级工程师”培训
    成都大数据Hadoop与Spark技术培训班
    大数据时代新闻采编人员职业能力培训
    EXCEL常用函数
    大数据实时处理-基于Spark的大数据实时处理及应用技术培训
    Properties vs. Attributes
  • 原文地址:https://www.cnblogs.com/borter/p/9608661.html
Copyright © 2020-2023  润新知