我无法理解如何完全测试此方法。 Eclipse写道“错过了4个分支中的2个”。
public boolean hasNext() {
return currIndex < currentSize && aList[currIndex] != null;
}
以下是我写的单元测试。
@Test
public void hasNextIteratorTest() throws FileNotFoundException {
Part4 p = new Part4();
Iterator<String> it = p.iterator();
p.add("hello");
p.add("dear");
p.add("friend");
p.add("!");
while (it.hasNext()) {
it.remove();
}
}
答案 0 :(得分:2)
如果要覆盖所有分支,则必须测试调用方法时可能发生的所有情况。
//1.
currIndex < currentSize && aList[currIndex] != null;
//2.
currIndex > currentSize && aList[currIndex] != null;
//3.
currIndex < currentSize && aList[currIndex] == null;
//4.
currIndex > currentSize && aList[currIndex] == null;
您必须在@Test方法(或方法)中强制执行此结果。