测试小结
描述:使用Java,针对开发者测试。
Junit基本注解
- @BeforeClass – 表示在类中的任意public static void方法执行之前执行
- @AfterClass – 表示在类中的任意public static void方法执行之后执行
- @Before – 表示在任意使用@Test注解标注的public void方法执行之前执行
- @After – 表示在任意使用@Test注解标注的public void方法执行之后执行
- @Test – 使用该注解标注的public void方法会表示为一个测试方法
我们这里看这样一段测试代码
public class OSTTest {
private final OST<Integer> tree = new OST<>();
private final TreeSet<Integer> set = new TreeSet<>();
@Before
public void before() {
tree.clear();
set.clear();
//这里的两个类的clear()方法表示将其清空
}
@Test
public void testAdd() {
//这里是第一个测试类添加的方法
assertEquals(set.isEmpty(), tree.isEmpty());
for (int i = 10; i < 30; i += 2) {
//以下有对类进行整形数据的添加
assertTrue(tree.isHealthy());
assertEquals(set.contains(i), tree.contains(i));
assertEquals(set.add(i), tree.add(i));
assertEquals(set.add(i), tree.add(i));
assertEquals(set.contains(i), tree.contains(i));
assertTrue(tree.isHealthy());
}
assertEquals(set.isEmpty(), tree.isEmpty());
}
@Test
public void testClear() {
//这里是第二个测试类清空的第二个方法
for (int i = 0; i < 2000; ++i) {
set.add(i);
tree.add(i);
} //这里是往类里添加了整形数据
assertEquals(set.size(), tree.size());
set.clear();
tree.clear();
assertEquals(set.size(), tree.size());
}
}
简单解释一下,这里主要是针对@Before的用法,测试类中的两个public void 方法都有对类中添加数据。 但是由于@Before注写下的clear()方法可以对类中的数据进行清除。那么在@Test每一个测试方法执行前都会被clear一次。 从而可以说明该测试类中的测试方法都是独立的。