如果您真的想测试示例中的所有内容,请尝试更多测试...例如:
public void testIncludes7() throws Exception {
Range range = new Range(0, 5);
assertFalse(range.includes(7));
}
public void testIncludes5() throws Exception {
Range range = new Range(0, 5);
assertTrue(range.includes(5));
}
public void testIncludes0() throws Exception {
Range range = new Range(0, 5);
assertTrue(range.includes(0));
}
public void testEncompassInc7() throws Exception {
Range range = new Range(0, 5);
range.encompass(7);
assertTrue(range.includes(7));
}
public void testEncompassInc5() throws Exception {
Range range = new Range(0, 5);
range.encompass(7);
assertTrue(range.includes(5));
}
public void testEncompassInc0() throws Exception {
Range range = new Range(0, 5);
range.encompass(7);
assertTrue(range.includes(0));
}
因为否则你会错过很多错误的可能性......例如,在包含之后,范围仅包括 7 等......还有范围长度的测试(以确保它不包含随机值),并且另一组完全试图在范围内包含 5 的测试......我们会期望什么 - 包含异常,或者范围保持不变?
无论如何,关键是如果您想要测试的行为中有任何假设,请将它们放在自己的测试中,是吗?