测试哪些我可以专门插入我的Set和ListIterator实现。
答案 0 :(得分:9)
Guava有一组TestSuiteBuilders
,它们共同为guava-testlib
组件中的给定集合实现生成几百到几千个测试用例。例如,您可能会写类似
public static Test suite() {
return SetTestSuiteBuilder.using(new TestStringSetGenerator() {
@Override protected Set<String> create(String[] elements) {
return ImmutableSet.copyOf(elements);
}
})
.named("ImmutableSet");
.withFeatures(CollectionSize.ANY, CollectionFeature.KNOWN_ORDER,
CollectionFeature.SERIALIZABLE,
CollectionFeature.ALLOWS_NULL_QUERIES)
.createTestSuite();
}
这为Set
实现生成了一套完整的极详尽的测试用例。
它没有尽可能完整的文档记录,但它会为您提供非常详尽的测试套件。
答案 1 :(得分:1)
Hamcrest库为单元测试集合提供了许多方法(例如断言两个集合包含相同的元素等)。恕我直言,它几乎是一个行业标准。