java - 对 assertEquals 的模糊引用
问题描述
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 underlined
Assert.assertEquals(41, day.getWeekno()); //Red underlined
Assert.assertEquals("Inserted duing DayHelperTest", day.getNote());
在“最后一天”块中,三个断言编译没有问题......String
预期和实际String
来自数据库
红色下划线的两个期望Integer
并得到一个Integer
.
但是,我无法摆脱下面的错误!!!
错误:(56, 19) java: org.junit.Assert 中的方法 assertEquals(java.lang.Object,java.lang.Object) 和 org.junit.Assert 中的方法 assertEquals(long,long) 对 assertEquals 的引用不明确匹配
有人可以帮忙吗?
谢谢。
解决方案
当我得到这样的错误时assertEquals
,这是因为我试图断言Long
从方法返回的对象等于long
原始值。
两个参数都应该是原始long
的
assertEquals(1450L, (long) day.getQuota());
(这可能会导致NullPointerException
ifgetQuota()
返回 null,但无论如何您的测试都会失败)
或者两个参数都应该是对象
assertEquals(Long.valueOf(1450), day.getQuota());
推荐阅读
- javascript - My97DatePicker 如何显示周一至周日
- python - 为什么多处理不能加速我的程序,而是相反
- asp.net - 是否应该缓存登录信息?
- google-visualization - Google 图表错误“无法读取未定义的属性‘广告’”
- python - 希望从 HTML 中的表中抓取和存储值,获取标签中的值
- java - Android Studio 有罕见的行为
- javascript - 警告:列表中的每个孩子都应该有一个唯一的“key”道具
- bash - 用于从大型日志文件中提取数据的 bash 脚本
- c++ - 为什么这个信号处理程序不能捕获 SIGHUP 或 SIGQUIT?
- node.js - 我怎样才能找到空间的角色?