zoukankan      html  css  js  c++  java
  • python学习笔记(28)-unittest单元测试-执行用例

    执行用例

    #写一个测试类
    import unittest
    import HTMLTestRunnerNew   #写好的模块可以直接调用
    #import HTMLTest  #测试报告模板
    from class_004_unittest.class_003 import TestMathMethod
    
    suite=unittest.TestSuite() #存储用例,创建一个容器,存储用例
    #测试用例们是一个类,如何加载用例,首先创建这个测试用例类的实例
    #这个类的实例们是一个个的单独的用例
    #在模块外的地方用到测试用例类的函数,就要需要创建这个类的实例。
    
    #方法一(添加用例):
    #创建实例的时候要不要传参,要看类(继承类)里面有没有初始化函数,这里的继承类是unittest.TestCase ,需要看这个类有没有初始化函数
    #添加用例(该方法太繁琐,需要挨条用例添加)
    # suite.addTest(TestMathMethod('test_add_two_positive'))
    # suite.addTest(TestMathMethod('test_add_two_zero'))
    # suite.addTest(TestMathMethod('test_add_two_negtive'))
    
    #方法二:(添加用例)  TestLoader
    loader=unittest.TestLoader()  #创建一个加载器
    #从测试类里面去找
    suite.addTest(loader.loadTestsFromTestCase(TestMathMethod))
    #去测试模块里去找
    #suite.addTest(loader.loadTestsFromModule(class_003))
    #这种方法就要导入具体的模块,而不是类,否则会找不到   from class_004 import class_003
    
    #执行用例  上下文管理器
    #file=open("test.txt",'w',encoding='utf-8') #指定输入文件,乱码加encoding
    # with open("test.txt",'w',encoding='utf-8') as file:
    #     runner=unittest.TextTestRunner(stream=file,descriptions=True,verbosity=0)
    #     #stream=None(指定输入文件),descriptions=True(),verbosity=1(0,1,2) 0没有执行状态,1只有执行状态,2最详细,显示每条用例以及执行状态
    #     runner.run(suite)
    
    #测试报告
    with open("test_report.html",'wb') as file:
        runner=HTMLTestRunnerNew.HTMLTestRunner(stream=file,
                                                verbosity=2,
                                                title="武宗梅的单元测试报告",
                                                description="wuzongmei的第一次单元测试报告",
                                                tester='武宗梅')
        runner.run(suite)
    #

     

  • 相关阅读:
    Java ExecutorService四种线程池的例子与说明
    当代中国社会划分为十大阶层
    各大公司Java面试题超详细总结
    浅谈Java中的hashcode方法
    Java 9的JDK中值得期待的:不仅仅是模块化
    整理Excel数据,10秒搞定别人半天的工作量
    零基础搭建Hadoop大数据处理-环境
    Java性能优化权威指南第三章虚拟机概览第一部分
    15个顶级Java多线程面试题及答案
    最全面的Java多线程用法解析
  • 原文地址:https://www.cnblogs.com/wuzm/p/11977673.html
Copyright © 2011-2022 走看看