# encoding = utf - 8
import unittest
# 被测试类
class myclass(object):
@classmethod
def sum(cls,a,b):
return a + b #将两个传入参数进行相加操作
@classmethod
def sub(cls, a, b):
return a - b #将两个传入参数进行相减操作
class mytest(unittest.TestCase):
# @classmethod
# def setUpClass(cls):
# print('setUpClass方法')
# @classmethod
# def tearDownClass(cls):
# print('tearDownClass方法')
# def setUp(self):
# self.a=3
# self.b=1
# print('setUp方法')
# def tearDown(self):
# print('tearDown方法')
#具体的测试用例,一定要以test开头
a = 3
b = 1
def test_2sum(self):
self.assertEqual(myclass.sum(self.a,self.b), 4, 'test sum fail')
print("test2sum")
@unittest.skip('跳过这条用例')
def test_1sub(self):
#断言两数之差的结果是否是2
self.assertEqual(myclass.sub(self.a,self.b),2,'test sub fail')
print('test1sub')
class aa(unittest.TestCase):
def testaa(self):
# test=1/0
print('testaa')
if __name__=='__main__':
# unittest.main()
#使用测试集合可以同时执行同一个 py文件中的测试用例
# testCase=unittest.TestLoader().loadTestsFromTestCase(mytest)
# testCase1 = unittest.TestLoader().loadTestsFromTestCase(aa)
# 将多个测试类加载到集合中
# suite=unittest.TestSuite([testCase,testCase1])
# unittest.TextTestRunner().run(suite)
# 1)获取TestSuite的实例对象
suite = unittest.TestSuite()
# 2)讲测试用例添加到测试容器中
suite.addTest(mytest("test_1sub"))
suite.addTest(aa('testaa'))
suite.addTest(mytest("test_2sum"))
# 3)创建TextTestRunner类的实例对象
runner = unittest.TextTestRunner(verbosity=2)
runner.run(suite)