Beispiel #1
0
 def test_029_failover_master_can_takeover_ap(self):
     u"""failover ap 切换到master ap模式后,能够正常接管ap(testlink_ID:2379)"""
     log.debug("029")
     tmp = APSBusiness(self.driver)
     #开启master ap的controller
     tmp.open_master_controller(data_basic['DUT_ip'],
         data_basic['sshUser'], data_login['all'])
     time.sleep(60)
     #搜索并配对特定的ap
     tmp.search_pair_AP(data_AP["slave:mac1"],data_AP["slave:mac2"])
     #设置slave ap2为failover ap
     tmp.change_slave_to_failover(data_AP["slave:mac2"])
     #master ap关闭controller
     tmp.close_master_controller(data_basic['DUT_ip'],
         data_basic['sshUser'], data_login['all'])
     #等待10分钟
     time.sleep(610)
     #登录failover ap的web界面
     tmp.login_failover_ap(data_basic['slave_web2'], "failover", data_login['all'])
     #设置failover ap为master ap
     tmp.change_failover_to_master()
     #登录后台,判断slave ap是否接管成功
     result = tmp.check_slave_ap_pair(data_basic['slave_ip2'],
         data_basic['sshUser'], data_login['all'], data_AP["slave:mac1"])
     self.assertTrue(result), "after failover change to master can take over ap, test fail!"
     print "after failover change to master can take over ap, test pass!"
Beispiel #2
0
 def test_038_failover_master_client_keep_connecting(self):
     u"""failover ap 切换到master ap模式后,客户端不会断开(testlink_ID:2391)"""
     log.debug("038")
     tmp = APSBusiness(self.driver)
     #登录failover ap的web界面
     tmp.login_failover_ap(data_basic['slave_web2'], "failover", data_login['all'])
     #设置failover ap为master ap
     tmp.change_failover_to_master()
     result = tmp.get_client_cmd_result("iw dev %s link"%data_basic['wlan_pc'])
     self.assertIn(data_ng['NG2_ssid'], result), "after failover change to master client won't disconnect, test fail!"
     print "after failover change to master client won't disconnect, test pass!"
Beispiel #3
0
    def test_055_reboot_failover_switching(self):
        u"""指定failover ap,并断开master ap后,10分钟内,重启failover ap(testlink_ID:2413)"""
        log.debug("055")
        tmp = APSBusiness(self.driver)
        #设置slave ap2为failover ap
        tmp.change_slave_to_failover(data_AP["slave:mac2"])
        #master ap关闭controller
        tmp.close_master_controller(data_basic['DUT_ip'],
            data_basic['sshUser'], data_login['all'])
        #等待1分钟
        time.sleep(60)
        #重启failover ap
        tmp.reboot_router(data_basic['slave_ip2'],data_basic['sshUser'],
            data_login['all'])
        #等待3分钟
        time.sleep(180)
        #failover ap依然是slave ap模式
        ssh = SSH(data_basic['slave_ip2'], data_login['all'])
        result = ssh.ssh_cmd(data_basic['sshUser'], "uci show controller.main.role")
        #等待10分钟
        time.sleep(610)
        #slave ap  变为failover 模式
        ssh = SSH(data_basic['slave_ip2'], data_login['all'])
        result1 = ssh.ssh_cmd(data_basic['sshUser'], "uci show controller.main.role")
        result2 = ssh.ssh_cmd(data_basic['sshUser'], "uci show controller.main.failover")
        #登录failover ap的web界面
        tmp.login_failover_ap(data_basic['slave_web2'], "failover", data_login['all'])
        #设置failover ap为master ap
        tmp.change_failover_to_master()
        result3 = ssh.ssh_cmd(data_basic['sshUser'], "uci show controller.main.role")
        result4 = ssh.ssh_cmd(data_basic['sshUser'], "uci show controller.main.failover")

        #登录failover ap的web界面
        tmp.login_failover_ap(data_basic['slave_web2'],
            data_basic['superUser'], data_login['all'])
        #该ap恢复出厂配置
        tmp2 = UpgradeBusiness(self.driver)
        tmp2.web_factory_reset_backup(data_basic['slave_ip2'])
        #开启master ap的controller
        tmp.open_master_controller(data_basic['DUT_ip'],
            data_basic['sshUser'], data_login['all'])
        time.sleep(60)
        self.assertIn("master", result1)
        self.assertIn("1", result2)
        self.assertIn("master", result3)
        self.assertIn("Entry not found", result4)
        self.assertIn("slave", result), "reboot failover ap, test fail!"
        print "reboot failover ap, test pass!"