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. 总结
- 测试套件 可以同时执行多个测试类
 - 测试套件可以方便 测试类的执行
 - 测试套件中的多个类最好放在同一个包下
 - 执行一个测试套件 相当于分别执行多个测试类
 









![代码随想录算法训练营第十七天 | 110.平衡二叉树,257. 二叉树的所有路径,404.左叶子之和 [二叉树篇]](https://img-blog.csdnimg.cn/direct/370c75c760594b25b037ce1cded787fd.png)









