junit 5 方法:assertEquals 和 assertTrue

 

區塊鏈中會用到junit 5的屬性assertEquals 和 assertTrue

assertEquals 和 assertTrue 區別

相同之處:都能判斷兩個值是否相等 
assertTrue 如果爲true,則運行success,反之Failure 
assertEquals 如果預期值與真實值相等,則運行success,反之Failure

不同之處: 
assertEquals 運行Failure會有錯誤提示,提示預期值是xxx,而實際值是xxx。容易調式 
assertTrue 沒有錯誤提示

代碼塊

App.java

package com.yubai.Test;

public class App 
{
    public String method(){
        return this.getClass().getName();
    }
}

AppTest.java

package com.yubai.Test;

import static org.junit.Assert.*;//必須是static
import org.junit.Test;

public class AppTest {
    App app = new App();

    @Test
    public void testBaseClass(){
     assertTrue(app.method().equals("com.yubai.Test.App"));
    }

    @Test
    public void testmethod(){
        assertEquals("com.yubai.Test.App", app.method());
    }
}

運行成功結果

這裏寫圖片描述

assertEquals 運行失敗後的錯誤提示

這裏寫圖片描述

org.junit.ComparisonFailure: expected:<…ven.TestMaven_test.A[]> but was:<…ven.TestMaven_test.A[pp]>

assertTrue 運行失敗後的錯誤提示

這裏寫圖片描述

總結

兩種方法都可以判斷,一般建議使用assertEquals 容易調試

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章