我使用pycharm结构如图:
1.简单测试用例是这么写的:如图
Test001.py文件
#简单的测试用例
import unittest
class Test001(unittest.TestCase):
#测试用例执行
def setUp(self):
print('case before')
pass
#测试用例后执行
def tearDown(self):
print('case After')
pass
#测试用例1
def test_case1(self):
a=1
b=2
self.assertEqual(a*b,7,'REsult Fail')
if __name__ == '__main__':
unittest.main()
运行完毕
2.可以创建一个套件管理测试用例 方便运行
#一个类 添加测试类
import unittest
class SuiteDemo(unittest.TestCase):
#测试用例前执行
def setUp(self):
print('begin')
pass
#测试用例后执行
def tearDown(self):
print('end')
pass
#测试用例:
def test_Case1(self):
a=3
b=2
self.assertEqual(a+b,5,'Result Fail')
print('case1')
def test_Case2(self):
a=3
b=5
self.assertEqual(a*b,6,'result fail')
print('case2')
#定义一个集合
def suite():
suiteTest=unittest.TestSuite()
suiteTest.addTest(SuiteDemo('test_Case1'))
suiteTest.addTest(SuiteDemo("test_Case2"))
return suiteTest
#默认使用主函数suite运行
if __name__ == '__main__':
unittest.main(defaultTest='suite')
3.如果有多个测试用例 那么我们需要使用使用suite套件分开管理 之后在添加既可
#设置多个测试用例 和 suite套件分开管理
#如有变动用例 之后在套件添加既可
import unittest
class TestcaseDemo(unittest.TestCase):
def setUp(self):
pass
def tearDown(self):
pass
def test_case1(self):
print("1")
def test_case2(self):
print("2")
def test_case3(self):
print("3")
def test_case4(self):
print('4')
4.导入文件夹的文件中的类 来提高效率
import unittest
from zidonghuaunit.Testcase import TestcaseDemo
#注意导入:来自文件夹的文件中的TestcaseDemo的类
#添加一个测试集合点 并添加一个测试用例
def suite():
suiteTest = unittest.TestSuite()
suiteTest.addTest(TestcaseDemo('test_case1'))
return suiteTest
#指定启动测试集合 运行集合方法
if __name__ == '__main__':
runner = unittest.TextTestRunner()
runner.run(suite())
5.指定测试集合启动
import unittest
from zidonghuaunit.Testcase import TestcaseDemo
#指定启动测试集合
if __name__ == '__main__':
#添加测试集合case启动
suiteTest = unittest.TestSuite()
suiteTest.addTest(TestcaseDemo('test_case2'))
suiteTest.addTest(TestcaseDemo('test_case3'))
#集合写在main
#直接启动集合
runner = unittest.TextTestRunner()
runner.run(suiteTest)
5.套件可以随不同要求去管理运行
import unittest
from zidonghuaunit.Testcase import TestcaseDemo
#包含集合 多个集合
#添加不同的合集
def Suite1():
suiteTest = unittest.TestSuite()
suiteTest.addTest(TestcaseDemo("test_case1"))
suiteTest.addTest(TestcaseDemo("test_case2"))
print("Suite1运行")
return suiteTest
def Suite2():
suiteTest = unittest.TestSuite()
suiteTest.addTest(TestcaseDemo("test_case3"))
suiteTest.addTest(TestcaseDemo("test_case4"))
print("suite2运行")
return suiteTest
#所有的suite
def AllSuite():
alltest = unittest.TestSuite((Suite1(),Suite2()))
return alltest
#运行可以随不同要求 运行 方便管理
if __name__ == '__main__':
runner = unittest.TextTestRunner()
runner.run(AllSuite())