Python Web 自动化学习之 unitetest.Testsuit

                      Python Web 自动化学习之 unitetest.Testsuit

一、unittest 类常用属性和方法

1)unittest.TestCase :这是所有测试用例类继承的基本类。

2)unittest.main():运行模块中以test命名的函数(调用时,TestLoader类搜索所有包含在该模块中以test开头命名的所有测试方法。有以说法是主要有test就可以被识别到,但是个人建议以test为开头,因为遇到过在使用TestSuite时,不是test开头的,没有被找到)。

3)unittest.TestSuite:创建测试套件,可以理解成是测试用例列表,用于测试用例的归档和整理。

4)unittest.TextTestRunner():通过该类下的run()来运行suite组装的测试用例。直接调用run(),执行suite参数。

5)unittest.defaultTestLoader():通过该类下的discover()方法可以自动根据测试目录--start_dir匹配查找测试用例文件(test*.py),并将查找到的测试用例组装到测试套件,直接调用run(),执行discover参数(路径,文件匹配条件)。

6)unittest.skip():选择不执行的测试用例。

  • unittest.skip(reason),跳过该用例,传入参数是你要跳过的原因。
  • unittest.skipIf(condition,reason),满足条件,则跳过该用例
  • unittest.skipUnless(condition,reson),满足条件,则不跳过该用例

二、unittest.TestSuite,给测试套件添加测试用例的方法

1)使用 testsuite.addtest()

 
#方法一 :添加testcase
Test_suit.addTest(Fortest('fortest1'))
Test_suit.addTest(ExampleTestCast2('test03'))

 ![报错] ValueError: no such test method in <class 'data_ddt.ExampleTestCast2'>: test03
# 添加失败,百度出来的理由是 @ddt 所以只能用loader加载

#方法二:添加testcases
 test_list = [Fortest('test_01'),Fortest('test_02'),Fortest('test_03')]
 Test_suit.addTests(test_list)

2)  使用 loader 加载

loader = unittest.TestLoader()  # 用例加载器
#loader 加载器的应用
# 方法一: 加载测试类
test_class = loader.loadTestsFromTestCase(ExampleTestCast2) #参数是测试类
Test_suit.addTest(test_class)

#方法二: 通过名称加载测试类
test_class1 = loader.loadTestsFromName('data_ddt.ExampleTestCast2') #参数是测试类名字符串
Test_suit.addTest(test_class1)

#方法三: 通过模块名称加载测试模块
sys.path.append('./') //测试目录
test_mod1 = loader.loadTestsFromModule(data_ddt) #参数是测试模块
Test_suit1.addTest(test_mod1)

 

#方法四:  还不知道和下面的方法区别
star_dir = './'
Test_suit = loader.discover(start_dir=star_dir,pattern='data_d*.py')

3)使用 defaultTestLoader

  #测试用例目录
  star_dir = './' 
  # pattern='data_d*.py' 匹配条件
  discove = unittest.defaultTestLoader.discover(start_dir=star_dir,pattern='data_d*.py') 

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值