#当测试用例不断增多的时候,如果所有测试用例还写在一个py文件里,会很麻烦,所以要分开进行管理,可以分成5个文件进行管理
# 例:Tset_project文件下包含5个文件:
# 1.StartEnd.py setUP和tearDown管理
# 2.calculatory.py 加减法运算方法的实现
# 3.test_add.py 加法测试用例
# 4.test_sub.py 减法测试用例
# 5.runtest 用例执行管理
# setUP和tearDown管理
# -*- coding:utf-8 -*-
import unittest
class guanli(unittest.TestCase):
def setUp(self):
print("测试开始:")
def tearDown(self):
print("测试结束!")
-------------------------------------------------------------------
# -*- coding:utf-8 -*-
from start_end import *
class Math:
def __init__(self,a,b):
self.a=int(a)
self.b=int(b)
def add_fa(self):
return self.a+self.b
def sub_fa(self):
return self.a-self.b
------------------------------------------------------------------
# -*- coding:utf-8 -*-
from add_and_sub import *
from start_end import *
import unittest
class Test1(guanli):
def test_add(self):
a=Math(4,5)
self.assertEqual(a.add_fa(),9)
print("加法")
-----------------------------------------------------------------
# -*- coding:utf-8 -*-
from add_and_sub import *
import unittest
class case2(guanli): # guanli 为start_end的类,继承
def test_jianfa(self):
b=Math(5,2)
self.assertEqual(b.sub_fa(),3)
print("减法")
-------------------------------------------------------------------
# 1.使用discover可以一次调用多个脚本
# 2.test_dir 被测试脚本的路径
# 3.pattern 脚本名称匹配规则
import unittest
test_dir='./' # ./表示当前目录
discover=unittest.defaultTestLoader.discover(test_dir,pattern='test_case*.py') #pattern相当于匹配的规则
if __name__ == '__main__':
runner=unittest.TextTestRunner()
runner.run(discover)