# 组织TestSuite
# TestSuite
unittest.TestSuite()类来表示一个测试用例集,把需要执行的用例类或模块存到一起,常用的方法如下:
unittest.TestSuite()addTest():添加单个测试用例方法addTest([..]):添加多个测试用例方法,方法名存在一个列表
unittest.TestLoader()loadTestsFromTestCase(测试类名):添加一个测试类loadTestsFromModule(模块名):添加一个模块discover(测试用例的所在目录):指定目录去加载,会自动寻找这个目录下所有符合命名规则的测试用例
# 示例
# run_test.py,与test_register.py、register.py同一目录下
import unittest
import test_register
# 第一步,创建一个测试套件
suite = unittest.TestSuite()
# 第二步:将测试用例,加载到测试套件中
# 方式1,添加单条测试用例
# case = test_register.TestRegister("test_register_success") # 创建一个用例对象,注意:通过用例类去创建测试用例对象的时候,需要传入用例的方法名(字符串类型)
# suite.addTest(case) # 添加用例到测试套件中
# 方式2,添加多条测试用例
# case1 = test_register.TestRegister("test_register_success")
# case2 = test_register.TestRegister("test_username_isnull")
# suite.addTest([case1, case2]) # 添加用例到测试套件中
# 方式3,添加一个测试用例类
# loader = unittest.TestLoader() # 创建一个加载对象
# suite.addTest(loader.loadTestsFromTestCase(test_register.TestRegister))
# 方式4,添加一个模块
loader = unittest.TestLoader() # 创建一个加载对象
suite.addTest(loader.loadTestsFromModule(test_register))
# 方式5,指定测试用例的所在的目录路径,进行加载,并可制定pattern
# loader = unittest.TestLoader()
# suite.addTest(loader.discover(r"d:\learn\python"))
# suite.addTest(loader.discover(start_dir = r"d:\learn\python", pattern="test_case*.py")) # 匹配规则:所有以test_case开头的