Python Unittest 自动化单元测试框架Demo

该文转载自:Python Unittest 自动化单元测试框架Demo

1.unittest简单的domo

# coding:utf-8
import unittest
class MyTestCase(unittest.TestCase):
# 测试用例前执行
def setUp(self):
pass
# 测试用例后执行
def tearDown(self):
pass
# 测试用例1
def test_Case1(self):
print 'Case1'
if __name__=='__main__':
unitest.main()

2.使用suite来管理多个case

# coding:utf-8
import unittest
class MyTestCase(unittest.TestCase):
# 测试用例前执行
def setUp(self):
pass
# 测试用例后执行
def tearDown(self):
pass
# 测试用例1
def test_Case1(self):
print 'Case1'
# 测试用例2
def test_Case2(self):
print 'Case2'

def  suite_test1():
# 构造测试集
suite = unittest.TestSuite()
# 添加Case
suite.addTest(MyTestCase('test_Case1'))
suite.addTest(MyTestCase('test_Case2'))
return suite

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

3.Suite和case可以分开写在不同的python文件中,这样方便管理case和suite;在测试时若更改了case只需要对相对应的suite进行修改即可
case模块:

# TestCase_Domo.py
# coding:utf-8
import unittest
class MyTestCase(unittest.TestCase):

# 测试用例前执行
def setUp(self):
pass

# 测试用例后执行
def tearDown(self):
pass

# 测试用例1
def test_Case1(self):
print 'Case1'

# 测试用例2
def test_Case2(self):
print 'Case2'

# 测试用例3
def test_Case3(self):
print 'Case3'
# 测试用例4
def test_Case4(self):
print 'test_Case4'

suite模块:

#TestSuite_Domo.py
# coding:utf-8
import unittest
from TestCase_Domo import MyTestCase 

def  Test_Suite():
# 构建测试集并添加Case
suite = unittest.TestSuite()
suite.addTest(MyTestCase('test_Case1'))
suite.addTest(MyTestCase('test_Case2'))
suite.addTest(MyTestCase('test_Case3'))
suite.addTest(MytestCase('test_Case4'))
return suite

if __name__=='__main__':
# 启动指定的测试集
runner = unittest.TextTestRunner()
runner.run(Test_Suite())

可以把不同的case添加到不同的suite,可以给添加的suite进行分组,且suite还可以包含suite
# TestSuite_Domo2.py
# coding:utf-8
import unittest
from TestCase_Domo import MyTestCase

def Test_Suite1():
suite = unittest.TestSuite()
suite.addTest(MyTestCase('test_Case1'))
suite.addTest(MyTestCase('test_Case2'))
return suite

def Test_Suite2():
suite = unittest.TestSuite()
suite.addTest(MyTestCase('test_Case3'))
suite.addTest(MyTestCase('test_Case4'))
return suite

def All_Suite():
all_suite = unittest.TestSuite((Test1(),Test2()))
return all_suite
if __name__ =='__main__':
runner = unittest.TextTestRunner()
runner.run(Test_Suite2())


  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值