Java 子列表测试用例
子列表(Java.util.List)本机实现的Im测试方法。Im使用Java8API文档。对于toArray()方法,我只有3个测试。你能帮我想出更多的测试用例吗?谢谢Java 子列表测试用例,java,testing,junit,sublist,Java,Testing,Junit,Sublist,子列表(Java.util.List)本机实现的Im测试方法。Im使用Java8API文档。对于toArray()方法,我只有3个测试。你能帮我想出更多的测试用例吗?谢谢 @Test public void toArrayBasicSub() { fillList(); List<String> expectedList = Arrays.asList("1","2","3","4","5"); String[] expected = {"1","2","3"
@Test
public void toArrayBasicSub() {
fillList();
List<String> expectedList = Arrays.asList("1","2","3","4","5");
String[] expected = {"1","2","3","4","5"};
List<String> sub = list.subList(0, 5);
Object[] actual = sub.toArray();
assertEquals(expectedList,list);
assertArrayEquals(expected,actual);
}
@Test
public void toArrayEmpty() {
String[] expected = {};
List<String> sub = list.subList(0, 0);
Object[] actual = sub.toArray();
assertArrayEquals(expected,actual);
}
@Test
public void toArrayNull() {
fillList();
List<String> expected = null;
List<String> sub = list.subList(0, 5);
sub = null;
boolean thrownException = false;
try {
sub.toArray();
} catch (NullPointerException e) {
thrownException = true;
}
assertTrue(thrownException);
}
@测试
向Arraybasicsub()公开无效{
填充列表();
List expectedList=Arrays.asList(“1”、“2”、“3”、“4”、“5”);
字符串[]应为{“1”、“2”、“3”、“4”、“5”};
List sub=List.subList(0,5);
Object[]实际值=sub.toArray();
资产质量(预期清单、清单);
资产质量(预期、实际);
}
@试验
公共无效{
字符串[]应为={};
List sub=List.subList(0,0);
Object[]实际值=sub.toArray();
资产质量(预期、实际);
}
@试验
对Arraynull()的公共无效{
填充列表();
列表应为空;
List sub=List.subList(0,5);
sub=null;
布尔thrownException=false;
试一试{
sub.toArray();
}捕获(NullPointerException e){
thrownException=true;
}
资产真实(thrownException);
}
我假设您将List.subList()作为目标仅用于学习目的(因为没有其他好的理由来测试JDK方法!)
所以,你基本上是在寻找反馈。。。所以让我们来帮忙吧
第一件事:明确你正在测试的范围。您说要测试子列表()。如果是这样,那么您的测试应该只与子列表有关
然后,合理测试的数量非常少:
对列表调用subList(),并返回一个列表。这是这里唯一重要的事情。之后,对通过调用subList()创建的列表执行的操作。。。不在测试子列表()的范围内 为什么要测试JDK的方法?开发团队已经对其进行了测试。您应该测试自己的代码,不要使用try-catch测试异常。使用
@Test(expected=NullPointerException.class)
或ExpectedException测试规则。