days = DayHelper.getInstance().getDays();Assert.assertNotNull(days);Assert.assertEquals(5, days.size());final Day day = days.get(0);Assert.assertNotNull(day);Assert.assertEquals("01/10/2018", day.getId());Assert.assertEquals("Mon", day.getDay());Assert.assertEquals(1450, day.getQuota()); //Red underlinedAssert.assertEquals(41, day.getWeekno()); //Red underlinedAssert.assertEquals("Inserted duing DayHelperTest", day.getNote());在“最后一天”块中,三个断言编译没有问题......String预期和实际String来自数据库红色下划线的两个期望Integer并获得Integer.但是,我无法摆脱下面的错误!!!错误:(56, 19) java:对 assertEquals 的引用是不明确的 org.junit.Assert 中的方法 assertEquals(java.lang.Object,java.lang.Object) 和 org.junit.Assert 中的方法 assertEquals(long,long)比赛有人可以帮忙吗。
2 回答
一只斗牛犬
TA贡献1784条经验 获得超2个赞
当我遇到这样的错误时assertEquals
,这是因为我试图断言Long
从方法返回的对象等于long
原始值。
要么两个参数都应该是原始long
的
assertEquals(1450L, (long) day.getQuota());
(这可能会导致NullPointerException
ifgetQuota()
返回 null,但无论如何您的测试都会失败)
或者两个参数都应该是对象
assertEquals(Long.valueOf(1450), day.getQuota());
天涯尽头无女友
TA贡献1831条经验 获得超9个赞
尝试这个:
Assert.assertEquals(1450L, day.getQuota());
Assert.assertEquals(41L, day.getWeekno());
注意到L前面的数字了吗?这就是我们指定在long值之间进行比较的方式。
添加回答
举报
0/150
提交
取消