微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

比较 JUnit 断言中的数组,简洁的内置方式?

如何解决比较 JUnit 断言中的数组,简洁的内置方式?

使用org.junit.Assert方法assertArrayEquals

import org.junit.Assert;
...

Assert.assertArrayEquals( expectedResult, result );

如果此方法不可用,您可能不小心从junit.framework.

解决方法

是否有一种简洁的内置方法可以对 JUnit 中的两个类似类型的数组进行等于断言?默认情况下(至少在 JUnit 4 中)它似乎对数组对象本身进行实例比较。

例如,不起作用:

int[] expectedResult = new int[] { 116800,116800 };
int[] result = new GraphixMask().sortedAreas(rectangles);
assertEquals(expectedResult,result);

当然,我可以手动完成:

assertEquals(expectedResult.length,result.length);
for (int i = 0; i < expectedResult.length; i++)
    assertEquals("mismatch at " + i,expectedResult[i],result[i]);

..但是有更好的方法吗?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。