• 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)
    #

     

  • 相关阅读:
    ccBPM典型的树形表单和多表头表单的流程示例
    Arrays -数组工具类,数组转化字符串,数组排序等
    String
    ArrayList
    Random
    Scanner
    Phone-java标准类
    HelloWorld-java
    c++ 由无向图构造邻接表,实现深度优先遍历、广度优先遍历。
    c++实现哈夫曼树,哈夫曼编码,哈夫曼解码(字符串去重,并统计频率)
  • 原文地址:https://www.cnblogs.com/wuzm/p/11977673.html
Copyright © 2020-2023  润新知