• python_单元测试unittest的三种运行方式(2)


    '''
    ********************************
    ****第一种方式运行流程****
    ********************************
    0、先写testcase
    测试套件
    导入模块
    from ... import ...
    1、初始化测试套件
    suite=unittest.TestSuite()
    2、往测试套件中添加测试用例
    cases=[类名('方法名'),类名('方法名')]
    suite.addTests(cases)

    3、运行前先将测试报告写在一个文件中
    with open('demo.txt','w',encoding='utf8') as f:
    3.1、初始化runner
    runner=unittest.TextTestRunner(f,verbosity=2)
    3.2、运行
    runner.run(suite)


    上面的1和2步骤,可以更改为(*如下两行*)

    cases=[类名('方法名'),类名('方法名')]
    suite=unittest.TestSuite(tests=cases)

    -------------------------------------------------
    ********************************
    ****第二种方式运行流程****
    loader
    ********************************

    1、导入模块
    from ... import ...
    2、初始化loader
    loader=unittest.TestLoader()
    3、 cases1=loader.loadTestsFromTestCase(类名)
    cases2=loader.loadTestsFromeTestCase(类名)

    suite=unittest.TestSuite()
    suite.addTests(case1)
    suite.addTests(case2)

    或者可以导入模块
    先导入from ... import 模块名
    cases1=loader.loadTestsFromTestCase(模块名)
    cases2=loader.loadTestsFromeTestCase(模块名)

    suite=unittest.TestSuite()
    suite.addTests(case1)
    suite.addTests(case2)
    with open(xxx)
    xxx


    ********************************
        HTML格式报告】
        ****第三种方式运行流程****
    自动发现测试用例
    ********************************

    导入HTMLTestRunner
    from HTMLTestRunnerNew import HTMLTestRunner

    初始化loader
    loader=unittest.TestLoader()
    -----------------------------
    自动发现测试用例 ***测试用例模块名称用test开头命名*** 否则会识别不到,报错
    -----------------------------
    start_dir=os.path.dirname(os.path.abspath(__file__))
    suite=loader.discover(start_dir)
    创建一个文件,测试报告生成在report文件中
    file_dir=os.path.join(start_dir,'report')
    if not os.path.exists(file_dir):
    os.mkdir(file_dir)
    文件名字,用时间格式表示
    file_time=datetime.now().strftime(%Y%m%d%H%M%S)

    拼接起来
    file_name=os.path.join(file_dir,file_time+'.html')
    打开文件
    with open(file_name,'wb') as f:
    初始化
    runner=HTMLTestRunner(f,
    verbosity=2,
    title='报告名称',
    description='关键字参数名称',
    tester='测试人员名称')
       运行
    runner.run(suite)

    '''
    十载长安得一第,何须空腹用高心
  • 相关阅读:
    ORACLE备份脚本(4-RMAN1级增量备份)
    ORACLE备份脚本(3-RMAN0级全备)
    解决oracle数据库最大数据文件数超了
    ORACLE 数据库备份脚本(数据泵2-指定用户)
    oracle 数据库备份脚本(数据泵1-全库)
    Python操作hdfs
    ant实例
    Java网络编程客户端和服务器通信
    WordCount程序
    Python脚本开发练习
  • 原文地址:https://www.cnblogs.com/qzyhome/p/11570200.html
Copyright © 2020-2023  润新知