Python 中 unittest 框架加载测试用例的常用方法

  unittest 当中为我们提供了许多加载用例的方法,这里说下常用的两种方法。。。推荐使用第二种

第一种加载测试用例的方法:使用加载器加载两个模块

需要把所有的模块加载到套件中

那么就可以自动的运行所有的模块

执行顺序是按照导入测试用例的先后来执行的,先执行 num_multi,在执行 num_add

import unittest

# 导入写好的测试用例,可以使用 as 重新命名更加简短方便
from Python_0715_unittest import lemon_06_unittest_two_num_multi as num_multi
from Python_0715_unittest import lemon_07_unittest_two_num_add as num_add

# 1. 创建测试套件,使用unittest当中的TestSuite (译:泰斯特速特)
one_suite = unittest.TestSuite()

# 2.通过模块来批量加载测试用例
# 定义测试加载器对象,使用 unittest 当中的 TestLoader (译:泰斯特娄则儿)
one_loader = unittest.TestLoader()

# 使用加载器中 loadTestsFromModule(译:楼的.泰斯特.福软木魔豆)从模块当中加载测试用例
# 然后使用 addTest 把用例放到 one_suite 套件当中
one_suite.addTest(one_loader.loadTestsFromModule(num_multi))
one_suite.addTest(one_loader.loadTestsFromModule(num_add))

# 3.执行用例
# 需要创建执行器对象,使用 unittest 当中的 TextTestRunner(译:泰斯特.泰斯特。软那儿)
one_runner = unittest.TextTestRunner()
# 使用执行器运行套件
one_runner.run(one_suite)

# 执行的结果中, 大写的F代码失败的用例
# .代表的是执行成功的用例,F代表失败

 

 加载测试用例的四种方法

一:unittest.TestLoader().loadTestsFromTestCase(类名)
一:unittest.TestLoader().loadTestsFromMoudule(模块名) 用的最广
三:unittest.TestLoader().loadTestsFromName(方法名)
四:unittest.TestLoader().loadTestsFromNames(方法名,复数形式)

 

第二种:自动识别加载测试用例的方法:discover (译:迪斯卡瓦)方法

import unittest


# 先加载测试用例
# 使用unittest中defaultTestLoader(译:滴fao的.泰斯特.楼泽)中discover(迪斯卡瓦)方法
# 第一种,使用 . 代表当前py文件所在的路径,自动加载以 test 开头的 py 文件模块
# one_suite = unittest.defaultTestLoader.discover(".")    # .代表当前py文件所在的路径

# 第二种,使用绝对路径加载,使用 r 进行转码
one_suite = unittest.defaultTestLoader.discover(r"D:\zj_danyuan\Python_0715_unittest")

# 执行用例
# 1.需要创建执行器对象,使用 unittest 当中的 TextTestRunner(译:泰斯特.泰斯特.软那儿)
one_runner = unittest.TextTestRunner()
# 2.运行套件
one_runner.run(one_suite)

# 执行的结果中, 大写的F代码失败的用例
# .代表的是执行成功的用例

 

 

*******请大家尊重原创,如要转载,请注明出处:转载自:https://www.cnblogs.com/shouhu/   谢谢!!******* 

posted @ 2020-01-06 12:41  守护往昔  阅读(1192)  评论(0编辑  收藏  举报