def all_case(self): case_dir = os.path.dirname(os.getcwd()) + os.sep + "test" # 设置测试脚本的文件路径 testcase = unittest.TestSuite() # testcase = Suit() discover = unittest.defaultTestLoader.discover(case_dir, pattern='*.py', top_level_dir=None) # 将所有用例存放进testcase 修改该脚本,控制运行顺序 testcase.addTest(InitializeWebdriver("initializedriver")) # 通过将其放在第一个test来实例化, InitializeWebdriver类中的initializedriver方法初始化driver for test_suite in discover: for test_case in test_suite: # 添加用例到testcase testcase.addTest(test_case) # testcase.addTest(CloseDriver("closedr")) # 添加退出操作,CloseDriver类中closedr关闭driver return testcase # 使用举例说明 class Login(InitializeWebdriver): # 所有的test都继承与初始化driver的类InitializeWebdriver,通过使用InitializeWebdriver类中driver类变量来保证driver的唯一传递 def test_get_url_login(self): Log.info("登录url") InitializeWebdriver.driver.get(url) #说明: # test_suite用法自解:将继承于unittest.TestCase类的所有测试类与方法以类(方法)组成一个list,循环执行该list # setUpClass、tearDownClass 只对同一个类下的所有test方法有效,所有当test所在类的py文件执行完成后,执行下一个py文件还是会触发setUpClass
原创文章,作者:3628473679,如若转载,请注明出处:https://blog.ytso.com/185540.html