zoukankan      html  css  js  c++  java
  • unittest多种加载执行用例方法

    unittest多种加载用例的方法

    1.TestCase:可以直接通过unittest.main()进行执行
    2.testsuite:加载测试套件suite进行实例化,通过addTest进行添加用例,
    最终将用例赋于给TextTestRunner()然后进行执行用例。
    3.TestLoader():表示用例加载器,我们可以通过把用例都存放在这里,然后再通过Suite进行批量执行。
    4.discover:用例比较多,discover可以帮助我们通过文件夹的形式批量执行用例。
    其中discover执行用例需要用到三个参数

    1、start_dir:表示执行用例的路径

    2、pattern:表示匹配用例规则

    3、top_level_dir:表示顶级项目目录名称

    import unittest
    import os
    
    
    class Test(unittest.TestCase):
    
        def test01(self):
            print("第一条用例")
    
        def test02(self):
            print("第二条用例")
    
        def test03(self):
            print("第三条用例")
    
    
    # TestCase
    """
        if __name__ == '__main__':
            unittest.main()
    """
    
    # testsuite
    """
    if __name__ == '__main__':
        # 实例化
        suite = unittest.TestSuite()
        # 执行Test模块中的test01用例
        suite.addTest(Test('test01'))
        # 执行用例
        runner = unittest.TextTestRunner()
        runner.run(suite)
    """
    """
    if __name__ == '__main__':
        # 实例化
        suite = unittest.TestSuite()
        # 用例进行添加在一起
        case_list = [Test('test01'),Test('test02'),Test('test03')]
        # 执行Test模块的用例
        suite.addTests(case_list)
        # 执行用例
        runner = unittest.TextTestRunner()
        runner.run(suite)
    """
    
    # TestLoader()
    """
    if __name__ == '__main__':
        # 实例化
        suite = unittest.TestSuite()
        # TestLoader实例化
        loader = unittest.TestLoader()
        # 加载Test模块下的所有用例
        suite.addTest(loader.loadTestsFromTestCase(Test))
        # 执行用例
        runner = unittest.TextTestRunner()
        runner.run(suite)
    """
    
    # discover
    """
    if __name__ == '__main__':
        # 用例文件夹
        case_path = os.path.dirname(os.path.realpath(__file__))
        # 批量执行用例,文件夹下,所有以t开头的用例文件,top_level_dir表示顶级目录名称
        discover = unittest.defaultTestLoader.discover(case_path,
                                                       pattern='t*.py',
                                                       top_level_dir=None)
        # 执行用例
        runner = unittest.TextTestRunner()
        runner.run(discover)
    """
  • 相关阅读:
    去除inline-block元素间间隙的几种方法
    数组去重的几种方法
    CSS实现水平居中的几种方法
    CSS实现垂直居中的几种方法
    实现一个jQuery的API
    jQuery从入门到放弃
    JavaScript中的DOM与BOM
    JavaScript中的原型与原型链
    爬取某东娃娃评价,生成词云
    vm提示:如果该虚拟机未在使用,请按“获取所有权(T)”按钮获取它的所有权。否则,请按“取消(C)”按钮以防损坏。
  • 原文地址:https://www.cnblogs.com/wzhqzm/p/13561179.html
Copyright © 2011-2022 走看看