zoukankan      html  css  js  c++  java
  • unintest基础1

    import unittest
    
    class Testfunc(unittest.TestCase):
        def testfunc(self):
            print('testfunc1')
    
        def testfunc2(self):
            print('testfunc2')
    
    
    suit = unittest.TestSuite()
    suit.addTest(Testfunc('testfunc')) #单独增加测试用例
    suit.addTest(unittest.makeSuite(Testfunc)) #把Testfunc下的测试用例都加到suit里面
    unittest.TextTestRunner().run(suit)  #TextTestRunner创建一个运行器,运行测试用例
    
    if __name__ == '__main__':
        unittest.main() #运行class类中的所有测试用例

    1、unittest执行顺序,按函数的字母顺序执行

    if __name__ == '__main__':
    unittest.main()

    2、方法开头都是以test开头,才会被执行

    3、unittest.main()与TextTestRunner().run()的区别

    main()执行的是class中的所有方法,TextTestRunner执行的是自己给suit加入的测试用例

     4、setUp、tearDown的执行顺序

    import unittest
    
    class Testfunc(unittest.TestCase):
        def testfunc(self):
            print('testfunc1')
    
        def testfunc2(self):
            print('testfunc2')
    
        def setUp(self):
            print("每个用例执行前,运行")
    
        def tearDown(self):
            print("每个用例执行结束后,运行")
    
        @classmethod
        def setUpClass(cls):
            print("所有用例执行前,运行")
    
        @classmethod
        def tearDownClass(cls):
            print("所有用例执行结束后,运行")
    
    if __name__ == '__main__':
        unittest.main() #运行class类中的所有测试用例

     


    discover 可以把多个文件中的测试用例集中起来,并返回给测试套件

    discover(start_dir,pattern='test*.py',top_level_dir=None)

    start_dir :要测试的模块名或测试用例目录。
    pattern='test*.py' :表示用例文件名的匹配原则。星号“*”表示任意多个字符。
    top_level_dir=None:测试模块的顶层目录。如果没顶层目录(也就是说测试用例不是放在多级目录
    中),默认为 None。


    import unittest
    
    def createsuit():
        testdir = "E:/lw/书籍/python/自动化/day1/"
    
        discover = unittest.defaultTestLoader.discover(testdir,pattern="test*.py",top_level_dir=None)
        print(discover)
    
        return discover
    
    if __name__ == '__main__':
        runner = unittest.TextTestRunner()
        runner.run(createsuit())


  • 相关阅读:
    目录拷贝
    获取当前时间
    获取当前目录名称
    WPF 修改数据后更新UI
    外网访问FTP服务,解决只能以POST模式访问Filezilla的问题
    解决Postgresql服务启动又关闭的问题
    更换PostgreSql的data文件夹并重新服务器(此方法同样适用于系统崩溃后,找回数据的操作)
    C#一键显示及杀死占用端口号进程
    [WP8开发] WinJS中winControl或者itemDataSource值为null的解决方案
    [WP8开发] WebBrowser控件与后台代码.cs简单的交互
  • 原文地址:https://www.cnblogs.com/xinjing-jingxin/p/9146349.html
Copyright © 2011-2022 走看看