def setUp(self): #定义驱动 self.browser = setDriver().set_driver() self.commonSuite = CommonSuiteData(self.browser) self.userCase = User(self.browser) #前置条件 self.commonSuite.user_module_prefix_condition()
def __init__(self, driver): self.driver = driver self.log = log() self.PwdStr = PwdStrategy(self.driver) self.cmf = commonFun(driver) self.dataFile = dataFileName() self.frameElem = frameElement(self.driver) self.commonsuite = CommonSuiteData(driver) self.user = UserPage(self.driver) self.session = sessionConfig(self.driver) self.conuser = User(driver) self.resource = Resource(driver) self.account = Accountmgr(driver)
class PasswordStr(): def __init__(self, driver): self.driver = driver self.log = log() self.PwdStr = PwdStrategy(self.driver) self.cmf = commonFun(driver) self.getElem = getElement(driver) self.cnEnde = cnEncode() self.dataFile = dataFileName() self.frameElem = frameElement(self.driver) self.commonsuite = CommonSuiteData(driver) self.user = UserPage(self.driver) self.session = sessionConfig(self.driver) self.conStr = conversationStrategy(driver) self.conuser = User(driver) self.resource = Resource(driver) self.account = Accountmgr(driver) u'''提示框元素路径''' def save_msg(self): save_msg = "html/body/div[1]/div/table/tbody/tr[2]/td[2]/div/table/tbody/tr[2]/td[2]/div" return save_msg u'''获取测试数据 Parameters: sheetname:sheet名称 return:表格数据 ''' def get_table_data(self, sheetname): dataFile = dataFileName() filePath = dataFile.get_password_stratrgy_test_data_url() authFileData = dataFile.get_data(filePath, sheetname) return authFileData u'''切换至会话配置模块''' def switch_to_session_module(self): self.frameElem.switch_to_content() self.frameElem.switch_to_top() self.cmf.select_menu(u"策略配置") self.cmf.select_menu(u"策略配置", u"会话配置") u'''切换至资源模块''' def switch_to_resource_module(self): self.frameElem.switch_to_content() self.frameElem.switch_to_top() self.cmf.select_menu(u"运维管理") self.cmf.select_menu(u"运维管理", u"资源") u'''切换至密码策略''' def switch_to_pwdStr_module(self): self.frameElem.switch_to_content() self.frameElem.switch_to_top() self.cmf.select_menu(u"策略配置") self.cmf.select_menu(u"策略配置", u"密码策略") #添加策略 def add_strategy_001(self): #日志开始记录 self.log.log_start("pwdStrategy") #获取数据 strategy_data = self.get_table_data("add_strategy") #保存弹框 saveMsg = self.save_msg() #无检查点的测试项标识,如果为True说明通过 flag = False for dataRow in range(len(strategy_data)): data = strategy_data[dataRow] try: #如果不是第一行标题,则读取数据 if dataRow != 0: self.frameElem.from_frame_to_otherFrame("mainFrame") self.PwdStr.add_pwd_button() self.PwdStr.set_pwd_name(data[2]) self.PwdStr.term_of_validity(data[3]) self.PwdStr.password_length_min(data[4]) self.PwdStr.password_length_max(data[5]) self.PwdStr.set_lower_case(data[6]) self.PwdStr.set_capital(data[7]) self.PwdStr.set_minimum_digital(data[8]) self.PwdStr.set_Minimum_symbol(data[9]) self.PwdStr.set_prohibition_of_using_keywords(data[10]) self.PwdStr.add_using_keywords_button() self.PwdStr.save_button() self.frameElem.switch_to_content() self.cmf.test_win_check_point("xpath", saveMsg, data, flag) self.PwdStr.return_button() except Exception as e: print("Policy adding error: ") + str(e) self.log.log_end("pwdStrategy") #编辑策略test def edit_strategy_002(self): #日志开始记录 self.log.log_start("editPwdStrategy") #获取数据 strategy_data = self.get_table_data("edit_strategy") #保存弹框 saveMsg = self.save_msg() #无检查点的测试项标识,如果为True说明通过 flag = False for dataRow in range(len(strategy_data)): data = strategy_data[dataRow] try: #如果不是第一行标题,则读取数据 if dataRow != 0: self.frameElem.from_frame_to_otherFrame("mainFrame") self.PwdStr.edit(data[2]) self.PwdStr.set_pwd_name(data[3]) self.PwdStr.term_of_validity(data[4]) self.PwdStr.password_length_min(data[5]) self.PwdStr.password_length_max(data[6]) self.PwdStr.set_lower_case(data[7]) self.PwdStr.set_capital(data[8]) self.PwdStr.set_minimum_digital(data[9]) self.PwdStr.set_Minimum_symbol(data[10]) self.PwdStr.set_prohibition_of_using_keywords(data[11]) self.PwdStr.add_using_keywords_button() self.PwdStr.save_button() self.frameElem.switch_to_content() self.cmf.test_win_check_point("xpath", saveMsg, data, flag) self.PwdStr.return_button() except Exception as e: print("Policy edit error: ") + str(e) self.log.log_end("editPwdStrategy") #策略校验 def check_strategy_003(self): #日志开始记录 self.log.log_start("checkPwdStrategy") #获取数据 strategy_data = self.get_table_data("check_strategy") #保存弹框 saveMsg = self.save_msg() #无检查点的测试项标识,如果为True说明通过 flag = False for dataRow in range(len(strategy_data)): data = strategy_data[dataRow] try: #如果不是第一行标题,则读取数据 if dataRow != 0: self.frameElem.from_frame_to_otherFrame("mainFrame") self.PwdStr.add_pwd_button() self.PwdStr.set_pwd_name(data[2]) self.PwdStr.term_of_validity(data[3]) self.PwdStr.password_length_min(data[4]) self.PwdStr.password_length_max(data[5]) self.PwdStr.set_lower_case(data[6]) self.PwdStr.set_capital(data[7]) self.PwdStr.set_minimum_digital(data[8]) self.PwdStr.set_Minimum_symbol(data[9]) self.PwdStr.set_prohibition_of_using_keywords(data[10]) self.PwdStr.add_using_keywords_button() self.PwdStr.save_button() self.frameElem.switch_to_content() self.cmf.test_win_check_point("xpath", saveMsg, data, flag) self.PwdStr.return_button() except Exception as e: print("Policy checkout error: ") + str(e) self.log.log_end("checkeditPwdStrategy") #检索名称test def search_strategy_004(self): #日志开始记录 self.log.log_start("searchPwdStrategy") #获取数据 strategy_data = self.get_table_data("search_strategy") #无检查点的测试项标识,如果为True说明通过 flag = False for dataRow in range(len(strategy_data)): data = strategy_data[dataRow] try: #如果不是第一行标题,则读取数据 if dataRow != 0: self.PwdStr.search_name(data[2]) self.PwdStr.click_search_button() self.PwdStr.click_reset_button() self.PwdStr.click_search_button() #清空标识状态 flag = False self.log.log_detail(data[0], True) except Exception as e: print("Policy search error: ") + str(e) self.log.log_end("searchPwdStrategy") #删除单个策略 def del_sing_policy_005(self): #日志开始记录 self.log.log_start("delPwdStrategy") #获取数据 strategy_data = self.get_table_data("del_strategy") #保存弹框 saveMsg = self.save_msg() #无检查点的测试项标识,如果为True说明通过 flag = False for dataRow in range(len(strategy_data)): data = strategy_data[dataRow] try: #如果不是第一行标题,则读取数据 if dataRow != 0: self.frameElem.from_frame_to_otherFrame("mainFrame") self.PwdStr.del_sing_strategy(data[2]) self.frameElem.switch_to_content() self.cmf.click_msg_button(1) self.cmf.test_win_check_point("xpath", saveMsg, data, flag) #校验删除后的名称是否存在 if self.cmf.is_namevalue_exsit(data[2], "fortStrategyPasswordName"): print("Delete success") except Exception as e: print("Policy del error: ") + str(e) self.log.log_end("delPwdStrategy") #与密码策略关联的会话配置 def session_association_007(self): #日志开始记录 self.log.log_start("sessionAssociation") #获取数据 strate_data = self.get_table_data("configure_strateg") #保存弹框 saveMsg = self.save_msg() #无检查点的测试项标识,如果为True说明通过 flag = False for dataRow in range(len(strate_data)): data = strate_data[dataRow] try: #如果不是第一行标题,则读取数据 if dataRow != 0: self.switch_to_session_module() self.frameElem.from_frame_to_otherFrame("mainFrame") self.PwdStr.set_pwd_strategy(data[4]) self.session.add_session(data[2]) self.session.add_locking_time(data[3]) self.session.save_global_button() self.frameElem.switch_to_content() self.cmf.test_win_check_point("xpath", saveMsg, data, flag) except Exception as e: print("session association error: ") + str(e) self.log.log_end("sessionAssociation") #与密码策略关联的用户 def user_association_008(self): #日志开始记录 self.log.log_start("userAssociation") #获取数据 strate_data = self.get_table_data("user_association") #保存弹框 saveMsg = self.save_msg() #无检查点的测试项标识,如果为True说明通过 flag = False for dataRow in range(len(strate_data)): data = strate_data[dataRow] try: #如果不是第一行标题,则读取数据 if dataRow != 0: self.conuser.switch_to_user_module() self.frameElem.from_frame_to_otherFrame("mainFrame") self.PwdStr.user_edit(data[2]) self.PwdStr.set_pwd(data[9]) self.PwdStr.set_pwd_agin(data[10]) self.user.save_button() self.frameElem.switch_to_content() self.cmf.test_win_check_point("xpath", saveMsg, data, flag) self.user.click_back_button() except Exception as e: print("user association error: ") + str(e) self.log.log_end("userAssociation") #为Windows资源添加密码策略 def resource_association_009(self): #日志开始记录 self.log.log_start("resourAcessociation") #获取数据 strate_data = self.get_table_data("resource_association") #保存弹框 saveMsg = self.save_msg() #无检查点的测试项标识,如果为True说明通过 flag = False for dataRow in range(len(strate_data)): data = strate_data[dataRow] try: #如果不是第一行标题,则读取数据 if dataRow != 0: self.commonsuite.sys_switch_to_dep() self.switch_to_resource_module() self.frameElem.from_frame_to_otherFrame("mainFrame") self.PwdStr.resource_edit(data[2]) self.PwdStr.set_resource_strategy(data[8]) self.resource.click_save_button() self.frameElem.switch_to_content() self.cmf.test_win_check_point("xpath", saveMsg, data, flag) self.PwdStr.return_button() except Exception as e: print("resour acessociation error: ") + str(e) self.log.log_end("resourAcessociation") #为Windows资源账号添加密码策略 def resource_account_association_010(self): #日志开始记录 self.log.log_start("resourAceccountAssociation") #获取数据 strate_data = self.get_table_data("resource_account_association") #保存弹框 saveMsg = self.save_msg() #无检查点的测试项标识,如果为True说明通过 flag = False for dataRow in range(len(strate_data)): data = strate_data[dataRow] try: #如果不是第一行标题,则读取数据 if dataRow != 0: self.PwdStr.account_manage(data[2]) self.account.click_account_add() self.PwdStr.set_resource_account_name(data[3]) self.PwdStr.set_resource_account_pwd(data[4]) self.PwdStr.set_resource_account_pwdagin(data[5]) self.PwdStr.save_account() self.frameElem.switch_to_content() self.cmf.test_win_check_point("xpath", saveMsg, data, flag) #点击资源账号编辑页面返回 self.PwdStr.return_button() #点击资源账号页面返回 self.PwdStr.return_button() except Exception as e: print("resour aceccount association error: ") + str(e) self.log.log_end("resourAceccountAssociation") #删除全部策略 def del_all_policy_006(self): #日志开始记录 self.log.log_start("delAllPwdStrategy") #获取数据 strategy_data = self.get_table_data("del_all_strategy") #保存弹框 saveMsg = self.save_msg() #无检查点的测试项标识,如果为True说明通过 flag = False for dataRow in range(len(strategy_data)): data = strategy_data[dataRow] try: #如果不是第一行标题,则读取数据 if dataRow != 0: self.commonsuite.dep_switch_to_sys() self.switch_to_pwdStr_module() self.frameElem.from_frame_to_otherFrame("mainFrame") self.PwdStr.select_all_button() self.PwdStr.del_button() self.frameElem.switch_to_content() self.cmf.click_msg_button(1) self.cmf.test_win_check_point("xpath", saveMsg, data, flag) #校验删除后的名称是否存在 if self.cmf.is_namevalue_exsit(data[2], "fortStrategyPasswordName"): print("Delete all success") except Exception as e: print("Policy delAll error: ") + str(e) self.log.log_end("delAllPwdStrategy") #if __name__ == "__main__": # browser = setDriver().set_local_driver() # commonSuite = CommonSuiteData(browser) # pwdCase = PasswordStr(browser) # commonSuite.pwdstr_module_prefix_condition() # pwdCase.add_strategy_001() # pwdCase.edit_strategy_002() # pwdCase.check_strategy_003() # pwdCase.search_strategy_004() # pwdCase.del_sing_policy_005() # pwdCase.session_association_007() # pwdCase.user_association_008() # pwdCase.resource_association_009() # pwdCase.resource_account_association_010() # pwdCase.del_all_policy_006() # commonSuite.pwdstr_module_post_condition()
class testUserSuite(unittest.TestCase): def setUp(self): #定义驱动 self.browser = setDriver().set_driver() self.commonSuite = CommonSuiteData(self.browser) self.userCase = User(self.browser) #前置条件 self.commonSuite.user_module_prefix_condition() def test_login(self): #添加用户 self.userCase.add_user_001() #修改用户 self.userCase.edit_user_002() #生成证书 self.userCase.create_user_cert_003() #重新生成证书 self.userCase.create_user_cert_again_003() #删除证书 self.userCase.delete_user_cert_004() #用户校验 self.userCase.checkout_user_005() #用户检索 self.userCase.search_user_by_username_006() self.userCase.search_user_by_status_006() self.userCase.search_user_by_dep_006() self.userCase.search_user_by_role_006() #删除单一用户 self.userCase.del_user_007() #删除全部用户 self.userCase.del_all_user_008() def tearDown(self): self.commonSuite.user_module_post_condition() initDriver().close_driver(self.browser)