all_test.py内容:
#coding=utf-8
import unittest
def creatsuite():
testunit = unittest.TestSuite()
#定义测试文件查找的目录
test_dir = "D:\\python\\unittest\\test_case"
#定义discover方法的参数
discover = unittest.defaultTestLoader.discover(test_dir,pattern='test*.py',top_level_dir=None)
#将用例循环添加到测试套件
for test_case in discover:
testunit.addTest(test_case)
print(testunit)
return testunit
if __name__ == "__main__":
runner = unittest.TextTestRunner()
runner.run(creatsuite())
count.py内容:
class Count:
def __init__(self,a,b):
self.a = a
self.b = b
def add(self):
return self.a + self.b
def subatraction(self):
return self.a -self.b
testadd.py内容
#coding=utf-8
import unittest
from count import Count
class TestAdd(unittest.TestCase):
def setUp(self):
pass
#整数相加
def test_add1(self):
self.j = Count(2,3)
self.add = self.j.add()
self.assertEqual(self.add,5,msg="not equal!")
#小数相加
def test_add2(self):
self.j = Count(2.2,3.4)
self.add = self.j.add()
self.assertEqual(self.add,5.6,msg="not equal!")
#字符串相加
def test_add3(self):
self.j = Count('hello',' world')
self.add = self.j.add()
self.assertEqual(self.add,'hello world',msg="not equal!")
def tearDown(self):
pass
if __name__ == "__main__":
#构建测试集
suite = unittest.TestSuite()
suite.addTest(TestAdd("test_add1"))
suite.addTest(TestAdd("test_add2"))
suite.addTest(TestAdd("test_add3"))
#执行测试
runner = unittest.TextTestRunner()
runner.run(suite)
testsub.py内容:
#coding=utf-8
import unittest
from count import Count
class TestAtraction(unittest.TestCase):
def setUp(self):
pass
#整数相减
def test_atraction1(self):
self.j = Count(5,2)
self.atraction = self.j.subatraction()
self.assertEqual(self.atraction,3,msg="not equal")
#小数相减
def test_atraction2(self):
self.j = Count(5.5,2.1)
self.atraction = self.j.subatraction()
self.assertEqual(self.atraction,3.4,msg="not equal")
def tearDown(self):
pass
if __name__ == "__main__":
#构建测试集
suite = unittest.TestSuite()
suite.addTest(TestAtraction("test_atraction1"))
suite.addTest(TestAtraction("test_atraction2"))
#执行测试
runner = unittest.TextTestRunner()
runner.run(suite)
testsuite.py内容:
#coding=utf-8
import unittest
'''
#加载测试文件
import testadd
import testsub
suite = unittest.TestSuite()
suite.addTest(testadd.TestAdd("test_add1"))
suite.addTest(testadd.TestAdd("test_add2"))
suite.addTest(testadd.TestAdd("test_add3"))
suite.addTest(testsub.TestAtraction("test_atraction1"))
suite.addTest(testsub.TestAtraction("test_atraction2"))'''
def creatsuite():
testunit = unittest.TestSuite()
#定义测试文件查找的目录
test_dir = "D:\\python\\unittest"
#定义discover方法的参数
discover = unittest.defaultTestLoader.discover(test_dir,pattern='test*.py',top_level_dir=None)
#将用例循环添加到测试套件
for test_case in discover:
testunit.addTest(test_case)
print(testunit)
return testunit
if __name__ == "__main__":
runner = unittest.TextTestRunner()
runner.run(creatsuite())