【发布时间】:2013-08-09 19:03:57
【问题描述】:
在一些 JUnit 修复过程中,我发现了这行代码:
Assert.assertNull(lAllEntryById.put(lEntry.getId(), lEntry));
如果我检查lAllEntryById.put(lEntry.getId(), lEntry) 操作,结果始终为空,但assertNull 仍然失败。
当我将代码更改为:
Entry lEntry = lAllEntryById.put(lEntry.getId(), lEntry);
Assert.assertNull(lEntry);
一切正常。
我有点困惑。你能告诉我为什么我用上面的代码行得到两个不同的结果吗?
非常感谢...
【问题讨论】:
-
检查是在什么情况下进行的?剩下的测试用例是什么?
-
上下文是什么意思?我用 ctrl+alt+i Eclipse IDE 检查它。
-
这就是我的意思。这种行为很奇怪,所有关于调用的信息都很有用。
-
HashTable是否被多个线程访问?
-
您能否将
assertNull悬停在复合语句中并验证签名是什么?如果将值转换为(Entry)会发生什么?