0. 什么是测试套件
对多个测试类的统一执行
- 只有一个测试类
点击一下执行就好 - 有 5个测试类
分别打开 挨个点执行 - 有100个测试类
??分别点开执行×
为100个测试类创建一个测试套件,然后再执行一次测试套件 √
- 一个测试套件“囊括“三个测试类
- 测试套件本质也是一个类
1. 为什么用测试套件?
方便测试 当有多个测试类时 不需要一个一个的执行
2. 如何使用测试套件?
- 有多个需要测试的类(最好放在同一个包中)
- 创建 测试套件 (选择需要测试的类 设置测试套件类的属性)
- 选择对应的包(包含要测试的的类)
- 选择创建测试套件
- 设置测试套件的属性
- 执行测试套件( 运行所测试套件所”囊括“的多个测试类)
- 上述的 测试方法分别来自 两个测试类
- 执行一个测试套件=分别执行两个测试类
3. 代码
测试类A
package com.jaylan.example.test_suit;
//导入断言类库 注意是static
import static org.junit.Assert.*;
//导入Junit 测试类库
import org.junit.Test;
public class ExampleTest_3_TestSuit_ClassATest {
@Test
public void testA_1() {
System.out.println("这是测试类ClassATest中的测试方法testA_1");
assertEquals(1 , 1);
}
@Test
public void testA_2() {
System.out.println("这是测试类ClassATest中的测试方法testA_2");
assertEquals(1 , 1);
}
}
测试类B
package com.jaylan.example.test_suit;
//导入 断言类库
import static org.junit.Assert.*;
//导入Junit 测试类库
import org.junit.Test;
// 测试套件 Test Suit 一套测试代码测试俩类似的类
public class ExampleTest_3_TestSuit_ClassBTest {
@Test
public void testB_1() {
System.out.println("这是测试类ClassBTest中的测试方法TestB_1");
assertEquals(1,1);
}
@Test
public void testB_2() {
System.out.println("这是测试类ClassBTest中的测试方法TestB_2");
assertEquals(1, 1);
}
@Test
public void testB_3() {
System.out.println("这是测试类ClassBTest中的测试方法TestB_3");
assertEquals(1, 1);
}
}
测试套件
package com.jaylan.example.test_suit;
import org.junit.runner.RunWith;
import org.junit.runners.Suite;
import org.junit.runners.Suite.SuiteClasses;
// 使用 Suite类的测试模式
@RunWith(Suite.class)
//说明这个测试类是一个测试套件 并说明套件中的类有哪些
@SuiteClasses({ ExampleTest_3_TestSuit_ClassATest.class, ExampleTest_3_TestSuit_ClassBTest.class })
public class AllTests {
}
4. 总结
- 测试套件 可以同时执行多个测试类
- 测试套件可以方便 测试类的执行
- 测试套件中的多个类最好放在同一个包下
- 执行一个测试套件 相当于分别执行多个测试类