码迷,mamicode.com
首页 > 编程语言 > 详细

python unittest使用

时间:2018-07-14 16:32:01      阅读:160      评论:0      收藏:0      [点我收藏+]

标签:unit   str   elf   执行   run   变量   ddt   没有   顺序   

uinittest使用

unittest.TestCase

实例:

import unittest


class Test1(unittest.TestCase):
    def test_x1(self):
        self.a=1
    def test_x2(self):
        print("a:",self.a)

class Test2():
    def x1(self):
        self.b=1
    def x2(self):
        print("b:",self.b)
#测试调用1
unittest.main()

#测试调用2
A=Test2()
A.x1()
A.x2()
  • 首先 unittest.TestCase 中测试用例方法 需要用test开头,后面调用 unittest.main()就会自动执行这些用例方法
  • unittest.main() 是会按顺序执行 Test1类里的函数的,但是又和普通的类实例后,逐个调用方法有区别
    明显测试调用1逐个执行test_x1和test_x2方法,执行到test_x2的时候,会报错没有定义变量a
    而测试调用2 不会报变量b没有定义,因为在执行A.x1()的时候就已经初始化变量b了。所以不会报错

TestSuite

  • 使用上面的class Test1(unittest.TestCase)类的定义
suite=unittest.TestSuite()
suite.addTest(Test1('test_x1'))
suite.addTest(Test1('test_x2'))
#或者使用
#suite.addTests([Test1('test_x1'),Test1('test_x2')]) 相当于上面两句

runner = unittest.TextTestRunner()
runner.run(suite)

python unittest使用

标签:unit   str   elf   执行   run   变量   ddt   没有   顺序   

原文地址:https://www.cnblogs.com/wanderingfish/p/9309457.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!