Ejemplo n.º 1
0
    def setUp(self):
        #定义驱动
        self.browser = setDriver().set_driver()

        self.commonSuite = CommonSuiteData(self.browser)
        self.userCase = User(self.browser)

        #前置条件
        self.commonSuite.user_module_prefix_condition()
Ejemplo n.º 2
0
 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)
Ejemplo n.º 3
0
    def setUp(self):
        #定义驱动
        self.browser = setDriver().set_driver()

        self.commonSuite = CommonSuiteData(self.browser)
        self.userCase = User(self.browser)
        
        #前置条件
        self.commonSuite.user_module_prefix_condition()
Ejemplo n.º 4
0
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()
Ejemplo n.º 5
0
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)
Ejemplo n.º 6
0
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)