用例文件ecshop_login.py:
import os import unittest from my_unit import MyUnit class EcshopLogin(MyUnit): #测试用例 def test01_xiaoming(self): print("测试小明") # 测试用例 def test02_weiwei(self): print("测试微微") # 测试用例 def test10_xiaohongi(self): print("测试小红") class Test2(unittest.TestCase): def test_login(self): print("测试登录")
夹具封装文件my_unit.py:
import unittest class MyUnit(unittest.TestCase): @classmethod def setUpClass(cls) -> None: print("setUpClass:在每个类之前执行一次。如:创建数据库,生成日志对象") def setUp(self): print("\nsetUp:在测试用例之前的准备工作,如:打开浏览器,加载网页") def tearDown(self): print("tearDown:测试用例之后扫尾的工作,如:关闭浏览器") @classmethod def tearDownClass(cls) -> None: print("tearDownClass:在每个类之后执行一次。如:关闭数据库连接,销毁日志对象")
运行文件all.py:
import os import unittest if __name__ =='__main__': suite = unittest.TestSuite() testcase = unittest.defaultTestLoader.discover(start_dir=os.getcwd(),pattern='*.py') suite.addTests(testcase) unittest.main(defaultTest='suite') #unittest.TextTestRunner().run(suite)两个调用方法结果相同没有区别