测试用例的执行顺序是按照测试用例名称执行的
Unitest.TestSuite() 测试套件的作用 执行测试用例的顺序class 类里面的方法存在名称为 test开头的方法,则都加载到suite中TestLoder 加载 TestCase 到 TestSuite里面verbosity参数为结果输出的详细程度,0为简单,1为一般(默认),2为最详细用例执行成功会显示为"." , 失败用例则显示为"F" testsuite 方法, 调用 addTest来加载测试用例: 类名('方法名')的集合 addTest() 添加一个测试用例addTest([,,])添加多个测试用例 根据字母顺序执行用例import unittest
class Testcase(unittest.TestCase):
def setUp(self): # 执行case之前执行
print(" set up 开始")
def tearDown(self): # 执行case之后执行
print("tearDown 结束")
def testAase1(self):
print("233")
def testCase2(self):
print('666')
def testBase3(self):
print('case3')
self.assertEqual(1,1)
if __name__ == '__main__':
unittest.main()
@unittest.skip() 跳过用例执行
import unittest
class Testcase(unittest.TestCase):
def setUp(self): # 执行case之前执行
print(" set up 开始")
def tearDown(self): # 执行case之后执行
print("tearDown 结束")
def testAase1(self):
print("233")
def testCase2(self):
print('666')
@unittest.skip("跳过用例执行")
def testBase3(self):
print('case3')
self.assertEqual(1,1)
if __name__ == '__main__':
unittest.main(verbosity=2)
suite.addTest() 添加单个测试用例
TestCase.py
import unittest
from TestCase2 import Testcase2
class Testcase(unittest.TestCase):
@classmethod
def setUpClass(cls): # 执行case之前执行
print(" set up 开始")
@classmethod
def tearDownClass(cls): # 执行case之后执行
print("tearDown 结束")
def testAase1(self):
print("Testcase 的 233")
def testCase2(self):
print('666')
if __name__ == '__main__':
# unittest.main(verbosity=2)
# 构建测试套件
suite = unittest.TestSuite()
#加载测试用例
suite.addTest(Testcase2("testAase1")) # 执行Testcase2.py 文件下的类方法
suite.addTest(Testcase2("testCase2")) # 执行Testcase2.py 文件下的类方法
suite.addTest(Testcase("testAase1"))
runner = unittest.TextTestRunner(verbosity=2)
runner.run(suite)
TestCase2.py
import unittest
class Testcase2(unittest.TestCase):
@classmethod
def setUpClass(cls): # 执行case之前执行
print(" set up 开始")
@classmethod
def tearDownClass(cls): # 执行case之后执行
print("tearDown 结束")
def testAase1(self):
print("Testcase2 的 testAase1")
def testCase2(self):
print('Testcase2 的 testCase2')
suite.addTests([]) 批量添加测试用例
TestCase.py
import unittest
from TestCase2 import Testcase2
class Testcase(unittest.TestCase):
@classmethod
def setUpClass(cls): # 执行case之前执行
print(" set up 开始")
@classmethod
def tearDownClass(cls): # 执行case之后执行
print("tearDown 结束")
def testAase1(self):
print("Testcase 的 233")
def testCase2(self):
print('Testcase 的 666')
if __name__ == '__main__':
# unittest.main(verbosity=2)
# 构建测试套件
suite = unittest.TestSuite()
# 批量添加,测试用例
suite.addTests([Testcase2('testAase1'),Testcase2('testCase2'),Testcase('testCase2')])
runner = unittest.TextTestRunner(verbosity=2)
runner.run(suite)
TestCase2.py
import unittest
class Testcase2(unittest.TestCase):
@classmethod
def setUpClass(cls): # 执行case之前执行
print(" set up 开始")
@classmethod
def tearDownClass(cls): # 执行case之后执行
print("tearDown 结束")
def testAase1(self):
print("Testcase2 的 testAase1")
def testCase2(self):
print('Testcase2 的 testCase2')
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)