gpt4 book ai didi

java - JUnit 产生奇怪的 AssertionFailedError

转载 作者:行者123 更新时间:2023-11-28 21:06:31 25 4
gpt4 key购买 nike

我目前使用的是 JUnit 4.4 和 Java 1.6.x。在最近的代码修复之后,我们开始在我对该方法的 JUnit 测试中遇到这个 AssertionFailedError:

UtilityTest.testParseDate(4t):2001 年太平洋标准时间 1 月 15 日星期一 09:26:07 预计:“2001 年太平洋标准时间 1 月 15 日星期一 09:26:07”但实际是:“太平洋标准时间 1 月 15 日星期一 09:26:07” 2001”

junit.framework.AssertionFailedError: UtilityTest.testParseDate(4t): Mon Jan 15 09:26:07 PST 2001 expected: but was:在 UtilityTest.testParseDate(未知来源)

如您所见,预期和实际看起来完全相同,经过多次代码检查,我们没有发现代码中有明显的错误。使用实际数据进行的测试运行也产生了正确的(预期的)结果。

有没有人以前在 JUnit 中见过这种行为,如果有,您找到原因和/或修复了吗?

我自己在以前版本的 Java 和 JUnit 中也看到过同样的事情:它发生时总是有些随机,通常唯一“有效”的解决方法是从头开始重新输入代码块。很奇怪,但这是消除此错误的唯一方法。这次我试图在行为中找出更“具体”的东西。

谢谢,

-理查德

最佳答案

你能发布 UtilityTest.testParseDate() 的代码吗?

您是在日期值上使用 assertEquals() 还是以另一种方式比较它们?如果是这样,你能断言毫秒时间戳是相等的而不是日期本身吗?

关于java - JUnit 产生奇怪的 AssertionFailedError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/486381/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com