java之Assert.assertEquals详细分析

java之Assert.assertEquals详细分析目录前言1.源码2.结合实例3.参数设置前言具体的参数设置中可以有在此需要引入importorg.junit.Assert;提供多个断言方法主要是比较两者参数的不同如果相同则执行成功,不同则执行中断,抛出异常1.源码断言两个对象是否相等publicstaticvoidassertEquals(Objectexpected,Objectactual){assertEquals((String)null,(Object)expected,(Object)a

大家好,欢迎来到IT知识分享网。

前言

具体的参数设置中可以有
在这里插入图片描述
在此需要引入import org.junit.Assert;
提供多个断言方法
主要是比较两者参数的不同
如果相同则执行成功,不同则执行中断,抛出异常


1. 源码

断言两个对象是否相等

public static void assertEquals(Object expected, Object actual) { 
   
  assertEquals((String)null, (Object)expected, (Object)actual);
}

public static void assertNotEquals(String message, Object unexpected, Object actual) { 
   
    if (equalsRegardingNull(unexpected, actual)) { 
   
       failEquals(message, actual);
    }
}

查看该函数的源码可知
断言两个对象引用同一个对象。如果不是的话
同样,抛出AssertionFailedError

public static void assertEquals(String message, Object expected, Object actual) { 
   
  if (!equalsRegardingNull(expected, actual)) { 
   
     if (expected instanceof String && actual instanceof String) { 
   
         String cleanMessage = message == null ? "" : message;
         throw new ComparisonFailure(cleanMessage, (String)expected, (String)actual);
       } else { 
   
           failNotEquals(message, expected, actual);
       }
    }
}

2. 结合实例

写一个测试代码

public class TextHelloMaven { 
   
    @Test
    public void testadd(){ 
   
        HelloMaven hello =new HelloMaven();
        int res=hello.add(10,20);
        Assert.assertEquals(30,res);

    }
}

3. 参数设置

具体的代码设置
可查看当前参数类型进行比较

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/21731.html

(0)
上一篇 2024-01-16 07:00
下一篇 2024-01-16 08:45

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信