我是 TDD 的忠实粉丝,我通常在编写代码之前为我的大学作业编写测试用例。所以这是我作业的界面:
public interface SinglyLinkedList<E> {
public void insertFirst(E e);
public void insertAfter(E e, int index);
public void removeFirst();
public void remove(int index);
public void removeAll();
public E getFirst();
public E get(int index);
public int size();
public String toString();
}
Run Code Online (Sandbox Code Playgroud)
我写了整个测试用例,但感觉就像我写了糟糕的测试代码。我找不到编写原子测试方法的方法。我无法在不使用 size() 的情况下测试 remove()。或者我找不到一种方法来测试 insertFirst() 而不调用 get() 之后。据我所知,没有办法标记 testmethods 依赖项,对吗?有没有办法可以使用模拟来解决问题?或者你会如何处理这个问题?