其实,ArrayList和LinkedList只是List的不同实现方式。测试List功能的时候要屏蔽具体实现。在测试代码中,如果要测试ArryList,那么就将实现类改为ArrayList,LinkedList毅然。
测试用例对所有实现List的类都应该是通用的。
重新建立一个测试用例文件:TestList。
它的内容为,除了new 具体类这一行根据具体实现不同,测试用例完全相同!。
package test;
import honbaa_list.LinkedList;
import honbaa_list.List;
import org.junit.Before;
import org.junit.Test;
public class TestList {
List<Integer> l;
@Before
public void setUp() throws Exception {
l = new LinkedList<Integer>();
}
@Test
public void testAdd() {
for (int i = 1; i < 10; i++) {
l.add(i);
}
System.out.println(l.toString());
}
@Test
public void testDelete(){
testAdd();
l.delete(9);
l.delete(4);
System.out.println(l);
}
@Test
public void testUpdate(){
testAdd();
l.update(1,100);
System.out.println(l);
}
@Test
public void testSearch(){
testAdd();
System.out.println(l.search(5));
System.out.println(l.size());
System.out.println(l.isEmpty());
}
}
}