我目前正在学习如何实现JUnit测试,但是我对于Stack实现中的isEmpty()方法感到困惑。这是我想要测试的方法:
boolean isEmpty(){
if(firstFree == 0) return true;
else return false;
}
这是我的测试:
public void isEmptyTest(){
assertTrue(onpStack.isEmpty());
assertFalse(onpStack.isEmpty());
}
无论堆栈中是否有元素,测试结果都是一样的失败。我知道原因:因为它不能同时拥有和不拥有元素。我无法想出如何使测试在两种情况下都通过。有没有正确的方法?还是应该针对这个isEmpty()方法分别做两个不同的测试?