Пример #1
0
 def test_001_check_wifi_upload(self):
     """判断WIFI总上行是否正确"""
     #首先启用无线网卡
     tmp2 = WirelessSettingsBusiness(self.driver)
     tmp2.wlan_enable(data_basic['wlan_pc'])
     #刷新页面重新登录ap页面
     Lg = LoginBusiness(self.driver)
     Lg.refresh_login_ap()
     #把AP恢复出厂配置
     tmp1 = ConfigUpdateBusiness(self.driver)
     tmp1.restore_AP_factory()
     #重新登录AP
     #逻辑类对象,建一个实例
     Lg = LoginBusiness(self.driver)
     #调用实例的登录AP的web界面
     Lg.login(data_basic['superUser'], data_basic['super_defalut_pwd'])
     #刷新页面重新登录ap页面
     Lg.refresh_login_ap()
     #修改无线的ssid,加密方式和密码
     tmp2.change_wifi_ssid_encryption_pwd(data_wirless['all_ssid'], "psk2",
                                          data_wirless['short_wpa'])
     #判断WIFI总上行是否正确
     tmp = StateInfoBusiness(self.driver)
     result = tmp.check_wifi_upload(data_wirless['all_ssid'],
                                    data_wirless['short_wpa'],
                                    data_basic['wlan_pc'],
                                    data_basic['lan_pc'])
     self.assertTrue(result)
     log.debug("001\t\tpass")
    def test_001_factory_reset_setupwizard(self):
        u"""在页面上把AP恢复出厂设置,并运行设置向导并配对slave ap,修改ssid,密码(testlink_ID:773)"""
        log.debug("001")
        #如果登录没有成功,再次使用默认密码登录;如果登录成功则直接退出
        Lg = LoginBusiness(self.driver)
        Lg.login_again()
        tmp = APSBusiness(self.driver)
        #描述:启用无线网卡
        tmp.wlan_enable(data_basic['wlan_pc'])
        #rsyslog服务器准备
        tmp.ready_rsyslog()
        result1 = tmp.web_factory_reset(data_basic['DUT_ip'],data_basic['sshUser'],\
                               data_basic['super_defalut_pwd'])
        #运行设置向导并配对slave ap,修改ssid,密码
        time.sleep(60)
        tmp1 = SWBusiness(self.driver)
        result2 = tmp1.complete_backup(data_wireless['all_ssid'],
                                       data_wireless['short_wpa'],
                                       data_basic['wlan_pc'],
                                       data_ap["slave:mac2"])

        tmp.connect_DHCP_WPA_AP(data_wireless['all_ssid'],
                                data_wireless['short_wpa'],
                                data_basic['wlan_pc'])
        #禁用启用有线网卡,以便无线网卡能够在ap的client页面显示在线
        tmp.wlan_disable(data_basic['lan_pc'])
        tmp.wlan_enable(data_basic['lan_pc'])
        time.sleep(60)
        tmp.dhcp_release_wlan(data_basic["wlan_pc"])

        print result1, result2
        assert result1 and result2, "reset the AP defalut config and run setupwizard in webpage,fail!"
        print "reset the AP defalut config and run setupwizard in webpage,pass!"
Пример #3
0
    def test_001_check_add_one_list(self):
        """添加一条IP过滤规则,PC的ip在范围之内,PC不能访问internet"""
        #首先启用无线网卡
        tmp = IPFilterBusiness(self.driver)
        tmp.wlan_enable(data_basic['wlan_pc'])
        #刷新页面重新登录ap页面
        Lg = LoginBusiness(self.driver)
        Lg.refresh_login_ap()
        #把AP恢复出厂配置
        tmp1 = ConfigUpdateBusiness(self.driver)
        tmp1.restore_AP_factory()
        #重新登录AP
        #逻辑类对象,建一个实例
        Lg = LoginBusiness(self.driver)
        #调用实例的登录AP的web界面
        Lg.login(data_basic['superUser'], data_basic['super_defalut_pwd'])
        #刷新页面重新登录ap页面
        Lg.refresh_login_ap()

        #先确定PC能够上网
        result1 = tmp.get_ping("www.baidu.com")
        #获取PC lan口附近的ip地址
        start_end_ip = tmp.obtain_lan_ip_near_ip(data_basic['lan_pc'], 5, 5)
        #添加一条IP过滤规则,PC的ip在范围之内
        tmp.add_one_IPFilter_list(*start_end_ip)
        #判断PC是否能够上网
        result2 = tmp.get_ping("www.baidu.com")
        self.assertEqual(result1, 0)
        self.assertNotEqual(result2, 0)
        log.debug("001\t\tpass")
Пример #4
0
 def test_013_clientmode_save_config_file(self):
     """客户端模式下保存配置"""
     tmp = WorkModeBusiness(self.driver)
     #修改工作模式为client模式,内网设置静态IP,桥接ap无线加密为wpa2
     tmp.change_workmode_to_client_LANstaticIP(data_basic['DUT_ip'], data_lan['netmask1'],
         data_wirless['bridge_essid'], data_wirless['bridge_encryption'],
         data_wirless['bridge_bssid'], data_wirless['bridge_pwd'],
         data_basic['ssh_user'], data_basic['ssh_pwd'])
     #逻辑类对象,建一个实例
     Lg = LoginBusiness(self.driver)
     #刷新页面重新登录ap页面
     Lg.refresh_login_ap()
     #下载配置文件
     tmp1 = ConfigUpdateBusiness(self.driver)
     tmp1.download_config_file()
     #判断配置文件是否下载
     #文件路径
     PATH = os.path.join(os.getcwd(), "bakup.file")
     print(PATH)
     result = os.path.exists(PATH)
     #登录ap后台,判断ap的工作模式
     result5 = tmp.check_DUT_workmode(data_basic['DUT_ip'], data_basic['ssh_user'],
         data_basic['ssh_pwd'])
     self.assertTrue(result)
     self.assertIn("wds_c", result5)
     log.debug("013\t\tpass")
    def test_001_default_wifi(self):
        """默认无线开关为开启状态"""
        # #首先启用无线网卡
        tmp = WirelessSettingsBusiness(self.driver)
        tmp.wlan_enable(data_basic['wlan_pc'])
        #刷新页面重新登录ap页面
        Lg = LoginBusiness(self.driver)
        Lg.refresh_login_ap()
        #把AP恢复出厂配置
        tmp1 = ConfigUpdateBusiness(self.driver)
        tmp1.restore_AP_factory()
        #重新登录AP
        #逻辑类对象,建一个实例
        Lg = LoginBusiness(self.driver)
        #调用实例的登录AP的web界面
        Lg.login(data_basic['superUser'], data_basic['super_defalut_pwd'])
        #刷新页面重新登录ap页面
        Lg.refresh_login_ap()

        #使用无线网卡扫描,能够连接上默认ssid
        #默认ssid
        default_ssid = "3ONE_2G_" + data.master_last_6mac()
        print(default_ssid)
        result = tmp.client_connect_ssid(default_ssid, data_basic['wlan_pc'],
                                         "open")
        #result = tmp.ssid_scan_result_backup(default_ssid, data_basic['wlan_pc'])
        self.assertTrue(result)
        log.debug("001\t\tpass")
Пример #6
0
 def check_slave_ap_group1_portal_function(self, NG2_ssid, password, wlan,
                                           eth):
     #7000新建一个网络组,vid设为2,开启dhcp server
     tmp1 = NGBusiness(self.driver)
     tmp1.mixed_7000_new_NG()
     #76xx上新建一个网络组,vid为2
     self.driver.get(data_basic['DUT_web'])
     self.driver.implicitly_wait(60)
     self.driver.refresh()
     time.sleep(10)
     tmp2 = SSIDBusiness(self.driver)
     tmp2.new_vlan_ssid(NG2_ssid, password, "2")
     #开启group1的强制门户认证
     tmp2.click_ssid_portal(2)
     #slave ap加入所有的网络组
     tmp3 = APSBusiness(self.driver)
     tmp3.add_slave_to_all_NG()
     #使用免认证的规则,访问腾讯首页,判断是否跳转到portal页面
     result = CPBusiness.check_jump_to_No_auth_portal(
         self, NG2_ssid, password, wlan, eth)
     #刷新页面重新登录ap页面
     Lg = LoginBusiness(self.driver)
     Lg.refresh_login_ap()
     #删除ssid1
     tmp2.del_all_NG()
     #删除7000新建的网络组
     tmp1.mixed_7000_del_NG()
     print result
     return result
Пример #7
0
 def check_group1_radius_portal_function(self, NG2_ssid, password, wlan,
                                         eth, t, radius_name,
                                         radius_password):
     #7000新建一个网络组,vid设为2,开启dhcp server
     tmp1 = NGBusiness(self.driver)
     tmp1.mixed_7000_new_NG()
     #76xx上新建一个网络组,vid为2
     self.driver.get(data_basic['DUT_web'])
     self.driver.implicitly_wait(60)
     self.driver.refresh()
     time.sleep(10)
     tmp3 = SSIDBusiness(self.driver)
     tmp3.new_vlan_ssid(NG2_ssid, password, "2")
     #开启ssid1的强制门户认证
     tmp3.click_ssid_portal(2)
     #master ap加入所有的网络组
     tmp2 = APSBusiness(self.driver)
     tmp2.add_master_to_all_NG()
     #验证默认list:grandstream中的radius认证的有效性
     portal_title,redirect_title,again_title,expiration_title = \
         CPBusiness.check_radius_portal(self,NG2_ssid,password,
         wlan,eth,t,radius_name,radius_password)
     #刷新页面重新登录ap页面
     Lg = LoginBusiness(self.driver)
     Lg.refresh_login_ap()
     #删除master ap的ssid1
     tmp3.del_all_NG()
     #删除7000新建的网络组
     tmp1.mixed_7000_del_NG()
     return portal_title, redirect_title, again_title, expiration_title
Пример #8
0
 def check_group1_open_DHCP_portal_function(self, NG2_name, ip, start_ip,
                                            end_ip, gateway, dns1, NG2_ssid,
                                            password, wlan, eth):
     #7000新建一个网络组,vid设为2,不开启dhcp server
     tmp1 = NGBusiness(self.driver)
     tmp1.mixed_7000_new_NG_no_DHCP()
     #76xx上新建一个网络组,vid为2,开启dhcp server和wifi
     self.driver.get(data_basic['DUT_web'])
     self.driver.implicitly_wait(60)
     self.driver.refresh()
     time.sleep(10)
     tmp1.new_group_open_dhcp_server(NG2_name, ip, start_ip, end_ip,
                                     gateway, dns1, NG2_ssid, password)
     #开启group1的强制门户认证
     tmp1.click_groupn_portal(1)
     #使用免认证的规则,访问腾讯首页,判断是否跳转到portal页面
     result = CPBusiness.check_jump_to_No_auth_portal(
         self, NG2_ssid, password, wlan, eth)
     #刷新页面重新登录ap页面
     Lg = LoginBusiness(self.driver)
     Lg.refresh_login_ap()
     #删除master ap的group1
     tmp1.del_all_NG()
     #删除7000新建的网络组
     tmp1.mixed_7000_del_NG()
     print result
     return result
Пример #9
0
 def check_open_close_many_groups_captive_portal_function(
         self, group0_ssid, group1_ssid, group2_ssid, password, wlan, eth):
     result = []
     tmp1 = SSIDBusiness(self.driver)
     for i in range(2):
         #点击group0的强制门户认证
         #点击三个网络组的强制门户认证
         tmp1.click_many_group_portal(3)
         #使用免认证的规则,访问腾讯首页,判断是否跳转到portal页面
         for j in [group0_ssid, group1_ssid, group2_ssid]:
             result1 = CPBusiness.check_jump_to_No_auth_portal(
                 self, j, password, wlan, eth)
             result.append(result1)
         #测试完成一遍后,再次登录ap页面,为后续循环测试做好准备
         #刷新页面重新登录ap页面
         Lg = LoginBusiness(self.driver)
         Lg.refresh_login_ap()
         time.sleep(30)
     #删除master ap的两个ssid
     tmp1 = SSIDBusiness(self.driver)
     tmp1.del_all_NG()
     #删除7000新建的两个网络组
     tmp2 = NGBusiness(self.driver)
     tmp2.mixed_7000_del_NG()
     print result
     return result
Пример #10
0
    def test_002_set_wan_staticIP(self):
        """外网设置为静态IP,能否上网"""
        tmp = WanSettingsBusiness(self.driver)
        #设置外网为staticIP
        tmp.change_wan_to_staticIP(data_wan['static_IP'], data_wan['netmask'],
                                   data_wan['gateway'], data_wan['DNS'])

        #判断ap能够上网
        time.sleep(30)
        #逻辑类对象,建一个实例
        Lg = LoginBusiness(self.driver)
        #刷新页面重新登录ap页面
        Lg.refresh_login_ap()
        tmp1 = StateInfoBusiness(self.driver)
        #获取当前模式
        result1 = tmp1.obtain_AP_current_mode()
        #获取外网的IP获取方式
        result2 = tmp1.obtain_WAN_IP_generation()
        #获取IP地址
        result3 = tmp1.obtain_WAN_IP_address()
        result4 = tmp.get_ping("www.baidu.com")
        self.assertEqual(result1, "路由模式")
        self.assertEqual(result2, "静态IP")
        self.assertEqual(data_wan['static_IP'], result3)
        self.assertEqual(0, result4)
        log.debug("002\t\tpass")
Пример #11
0
 def test_003_set_wan_dhcp(self):
     """外网设置为动态获取,能否上网"""
     tmp = WanSettingsBusiness(self.driver)
     #设置外网为动态获取
     tmp.change_wan_to_dhcp()
     time.sleep(30)
     #逻辑类对象,建一个实例
     Lg = LoginBusiness(self.driver)
     #刷新页面重新登录ap页面
     Lg.refresh_login_ap()
     tmp1 = StateInfoBusiness(self.driver)
     #获取当前模式
     result1 = tmp1.obtain_AP_current_mode()
     #获取外网的IP获取方式
     result2 = tmp1.obtain_WAN_IP_generation()
     #获取IP地址
     result3 = tmp1.obtain_WAN_IP_address()
     #判断ap能够上网
     result4 = tmp.get_ping("www.baidu.com")
     tmp.disconnect_ap()
     self.assertEqual(result1, "路由模式")
     self.assertEqual(result2, "动态获取")
     self.assertIn(data_wan['wan_str'], result3)
     self.assertEqual(0, result4)
     log.debug("003\t\tpass")
 def test_007_check_bridgemode_reboot_ap(self):
     """桥接模式下在页面上点击重启设备后,验证设备是否重启"""
     tmp = WorkModeBusiness(self.driver)
     #修改工作模式为bridge模式,内网设置静态IP
     tmp.change_workmode_to_bridge_LANstaticIP(
         data_basic['DUT_ip'], data_lan['netmask1'],
         data_wirless['bridge_essid'], data_wirless['bridge_encryption'],
         data_wirless['bridge_bssid'], data_wirless['bridge_pwd'],
         data_wirless['all_ssid'], "psk2", data_wirless['short_wpa'],
         data_basic['ssh_user'], data_basic['ssh_pwd'])
     #逻辑类对象,建一个实例
     Lg = LoginBusiness(self.driver)
     #刷新页面重新登录ap页面
     Lg.refresh_login_ap()
     #登录ap后台,判断ap的工作模式
     result5 = tmp.check_DUT_workmode(data_basic['DUT_ip'],
                                      data_basic['ssh_user'],
                                      data_basic['ssh_pwd'])
     tmp = RebootSystemBusiness(self.driver)
     #在页面上点击重启设备后,验证设备是否重启
     result1, result2 = tmp.check_reboot_ap(data_basic['DUT_ip'])
     self.assertIn("wds", result5)
     self.assertNotEqual(0, result1)
     self.assertEqual(0, result2)
     log.debug("007\t\tpass")
Пример #13
0
 def test_001_disable_dhcp_server(self):
     """禁用dhcp server,client无法获取到ip地址"""
     #首先启用无线网卡
     tmp = LanSettingsBusiness(self.driver)
     tmp.wlan_enable(data_basic['wlan_pc'])
     #刷新页面重新登录ap页面
     Lg = LoginBusiness(self.driver)
     Lg.refresh_login_ap()
     #把AP恢复出厂配置
     tmp1 = ConfigUpdateBusiness(self.driver)
     tmp1.restore_AP_factory()
     #重新登录AP
     #逻辑类对象,建一个实例
     Lg = LoginBusiness(self.driver)
     #调用实例的登录AP的web界面
     Lg.login(data_basic['superUser'], data_basic['super_defalut_pwd'])
     #刷新页面重新登录ap页面
     Lg.refresh_login_ap()
     #关闭ap的dhcp server
     tmp.enable_disable_dhcp_server(0)
     result = tmp.check_AP_dhcp_server(data_basic['lan_pc'], "192.168.1")
     #指定有线网卡的固定ip--能够访问ap的webpage
     tmp.set_eth_ip(data_basic['lan_pc'], data_basic['static_PC_ip'])
     self.assertFalse(result)
     log.debug("001\t\tpass")
Пример #14
0
 def check_STA_unblock_no_need_auth(self, ssid, password, wlan, eth):
     #无线STA通过group0的认证
     tmp = CPBusiness(self.driver)
     tmp.access_No_auth_portal(ssid, password, wlan, eth, "wpa")
     #无线网卡释放ip地址
     CPControl.dhcp_release_wlan(self, wlan)
     #断开无线连接
     CPControl.disconnect_ap(self)
     #启用有线网卡
     CPControl.wlan_enable(self, eth)
     #刷新页面重新登录ap页面
     Lg = LoginBusiness(self.driver)
     Lg.refresh_login_ap()
     #block STA
     tmp.connect_WPA_AP(ssid, password, wlan)
     tmp3 = ClientsBusiness(self.driver)
     wlan_mac = tmp3.get_wlan_mac(wlan)
     tmp3.block_client(wlan_mac)
     #unblock STA
     tmp4 = ClientAccessBusiness(self.driver)
     #删除Global Blacklist里面的所有的mac
     tmp4.del_Global_Blacklist_mac()
     #使用免认证的规则,腾讯首页,判断是否跳转到portal页面
     result = tmp.check_jump_to_No_auth_portal(ssid, password, wlan, eth)
     return result
Пример #15
0
 def test_005_apmode_save_config_file(self):
     """AP模式下保存配置"""
     tmp = WorkModeBusiness(self.driver)
     #设置PC的静态IP,能够访问DUT的webpage
     tmp.set_eth_ip(data_basic['lan_pc'], data_basic['static_PC_ip'])
     #修改工作模式为AP模式,内网设置静态IP
     tmp.change_workmode_to_ap_LANstaticIP(data_basic['DUT_ip'],
         data_lan['netmask1'], data_wirless['all_ssid'], "psk2",
         data_wirless['short_wpa'], "HT20")
     time.sleep(30)
     #逻辑类对象,建一个实例
     Lg = LoginBusiness(self.driver)
     #刷新页面重新登录ap页面
     Lg.refresh_login_ap()
     #下载配置文件
     tmp1 = ConfigUpdateBusiness(self.driver)
     tmp1.download_config_file()
     #判断配置文件是否下载
     #文件路径
     PATH = os.path.join(os.getcwd(), "bakup.file")
     print(PATH)
     result = os.path.exists(PATH)
     #登录ap后台,判断ap的工作模式
     result5 = tmp.check_DUT_workmode(data_basic['DUT_ip'], data_basic['ssh_user'],
         data_basic['ssh_pwd'])
     self.assertTrue(result)
     self.assertIn("ap", result5)
     log.debug("005\t\tpass")
Пример #16
0
    def test_001_check_add_one_list_not_access_url(self):
        """添加一条url过滤规则,PC不能够访问指定的url"""
        #首先启用无线网卡
        tmp = UrlFilterBusiness(self.driver)
        tmp.wlan_enable(data_basic['wlan_pc'])
        #刷新页面重新登录ap页面
        Lg = LoginBusiness(self.driver)
        Lg.refresh_login_ap()
        #把AP恢复出厂配置
        tmp1 = ConfigUpdateBusiness(self.driver)
        tmp1.restore_AP_factory()
        #重新登录AP
        #逻辑类对象,建一个实例
        Lg = LoginBusiness(self.driver)
        #调用实例的登录AP的web界面
        Lg.login(data_basic['superUser'], data_basic['super_defalut_pwd'])
        #刷新页面重新登录ap页面
        Lg.refresh_login_ap()

        #先确定PC能够访问指定的url--baidu
        result1 = tmp.check_access_url("www.baidu.com")
        #添加一条url过滤规则--baidu
        tmp.add_one_list("baidu")
        #确定PC不能够访问指定的url--baidu
        result2 = tmp.check_access_url("www.baidu.com")
        self.assertTrue(result1)
        self.assertFalse(result2)
        log.debug("001\t\tpass")
Пример #17
0
 def test_019_config_master_ap_setup_failover_ap(self):
     u"""准备好master ap的配置及流量,设置好failover ap"""
     log.debug("019")
     tmp = APSBusiness(self.driver)
     #解除特定slave AP1的配对
     tmp.unpair_special_slave_AP(data_AP['slave:mac1'])
     #web页面退出登录
     tmp2 = NavbarBusiness(self.driver)
     tmp2.logout()
     #AP 下载/上传流量---master ap
     tmp1 = OVBusiness(self.driver)
     tmp1.set_AP_download_unload(data_wireless['all_ssid'],
         data_wireless["short_wpa"], data_basic['wlan_pc'], data_basic['lan_pc'])
     #重新登录AP
     Lg = LoginBusiness(self.driver)
     Lg.login(data_basic['superUser'], data_login['all'])
     #多个slave ap时,搜索并配对特定的ap
     tmp.search_pair_special_AP(data_AP['slave:mac2'])
     #设置slave ap为failover ap
     tmp.change_slave_to_failover(data_AP['slave:mac2'])
     #检查slave ap是否变为failover ap
     result = tmp.check_change_to_failover_AP(data_AP['slave:mac2'],
                 data_basic['DUT_ip'], data_basic['sshUser'], data_login['all'])
     self.assertTrue(result), "master ap and set failover ap ready, test fail!"
     print "master ap and set failover ap ready, test pass!"
 def test_001_factory_reset(self):
     u"""在页面上把AP恢复出厂设置(testlink_ID:773)"""
     #如果登录没有成功,再次使用默认密码登录;如果登录成功则直接退出
     log.debug("001")
     Lg = LoginBusiness(self.driver)
     Lg.login_again()
     tmp = APSBusiness(self.driver)
     #描述:启用无线网卡
     tmp.wlan_enable(data_basic['wlan_pc'])
     #rsyslog服务器准备
     tmp.ready_rsyslog()
     result = tmp.web_factory_reset(data_basic['DUT_ip'],data_basic['sshUser'],\
                            data_basic['super_defalut_pwd'])
     #修改默认网络组的ssid和密码
     tmp1 = SSIDBusiness(self.driver)
     tmp1.change_wifi_ssid_key(data_wireless['all_ssid'],
                               data_wireless["short_wpa"])
     tmp.connect_DHCP_WPA_AP(data_wireless['all_ssid'],
                             data_wireless['short_wpa'],
                             data_basic['wlan_pc'])
     #禁用启用有线网卡,以便无线网卡能够在ap的client页面显示在线
     tmp.wlan_disable(data_basic['lan_pc'])
     tmp.wlan_enable(data_basic['lan_pc'])
     time.sleep(60)
     tmp.dhcp_release_wlan(data_basic["wlan_pc"])
     assert result, "reset the AP defalut config in webpage,fail!"
     print "reset the AP defalut config in webpage,pass!"
 def test_018_del_client_name(self):
     u"""删除设置用户名称后,用户再次连接后主机名显示为用户本身名字(testlink_ID:516)"""
     log.debug("018")
     tmp = ClientsBusiness(self.driver)
     wlan_mac = tmp.get_wlan_mac(data_basic['wlan_pc'])
     #只有一个客户端时,修改客户端名称
     tmp.change_client_name(wlan_mac, "")
     #重启ap
     tmp1 = UpgradeBusiness(self.driver)
     tmp1.web_reboot(data_basic['DUT_ip'])
     tmp1.connect_DHCP_WPA_AP(data_wireless['all_ssid'],\
             data_wireless['short_wpa'],data_basic['wlan_pc'])
     tmp.dhcp_release_wlan(data_basic['wlan_pc'])
     self.driver.refresh()
     self.driver.implicitly_wait(10)
     #登录AP
     Lg = LoginBusiness(self.driver)
     Lg.login(data_basic['superUser'], data_login['all'])
     #获取第一个客户端的名称
     result = tmp.check_client_name(wlan_mac)
     #取测试平台的name
     PC_name = subprocess.check_output("hostname", shell=True).strip("\n")
     print result, PC_name
     # tmp.dhcp_release_wlan(data_basic['wlan_pc'])
     assert (result == PC_name) or (result
                                    == ""), "del client name,test fail!"
     print "del client name,test pass!"
 def test_004_check_apmode_reboot_ap(self):
     """AP模式下在页面上点击重启设备后,验证设备是否重启"""
     tmp1 = WorkModeBusiness(self.driver)
     #设置PC的静态IP,能够访问DUT的webpage
     tmp1.set_eth_ip(data_basic['lan_pc'], data_basic['static_PC_ip'])
     #修改工作模式为AP模式,内网设置静态IP
     tmp1.change_workmode_to_ap_LANstaticIP(data_basic['DUT_ip'],
                                            data_lan['netmask1'],
                                            data_wirless['all_ssid'],
                                            "psk2",
                                            data_wirless['short_wpa'],
                                            "HT20")
     #time.sleep(30)
     #逻辑类对象,建一个实例
     Lg = LoginBusiness(self.driver)
     #刷新页面重新登录ap页面
     Lg.refresh_login_ap()
     #登录ap后台,判断ap的工作模式
     result5 = tmp1.check_DUT_workmode(data_basic['DUT_ip'],
                                       data_basic['ssh_user'],
                                       data_basic['ssh_pwd'])
     tmp = RebootSystemBusiness(self.driver)
     #在页面上点击重启设备后,验证设备是否重启
     result1, result2 = tmp.check_reboot_ap(data_basic['DUT_ip'])
     self.assertIn("ap", result5)
     self.assertNotEqual(0, result1)
     self.assertEqual(0, result2)
     log.debug("004\t\tpass")
Пример #21
0
 def check_login_defualt_language(self):
     tmp = NavbarControl(self.driver)
     #点击页面上的退出按钮
     tmp.logout()
     tmp1 = LoginBusiness(self.driver)
     #获取所选择的语言
     result = tmp1.login_get_language()
     return result
    def change_workmode_to_client_LANstaticIP(self, ip, netmask,
            bridge_essid, bridge_encryption_mode,bridge_bssid,
            bridge_pwd, user, pwd):
        """
        修改工作模式为client模式,内网设置静态IP
        """
        for i in range(3):
            #点击工作模式菜单
            self.menu_workmode()
            #选择桥接模式
            self.set_mode("client")
            time.sleep(10)
            #内网设置点击静态IP按钮
            self.set_client_LAN_staticIP()
            #输入静态IP的ip地址
            self.set_client_LAN_staticIP_ip(ip)
            #输入静态IP的子网掩码
            self.set_client_LAN_staticIP_netmask(netmask)
            #输入静态ip的gateway
            self.set_client_LAN_staticIP_gateway("")
            #点击下一步
            self.click_next_button()

            #桥接设置
            # #点击扫描
            # self.click_bridge_bridge_scan_button()
            # time.sleep(10)
            # #扫描页面中,根据扫描到的ap的mac地址点击对应的操作按钮
            # self.set_bridge_bridge_scan_operat(bridge_bssid)
            #桥接设置输入要桥接的ssid
            self.set_client_bridge_ssid(bridge_essid)
            #桥接设置要桥接的无线的加密方式
            self.set_client_bridge_encryption(bridge_encryption_mode)
            #输入桥接ap的无线密码
            self.set_client_bridge_password(bridge_pwd)
            #桥接设置要桥接的对端无线mac地址
            self.set_client_bridge_BSSID(bridge_bssid)
            #点击下一步
            self.click_next_button()

            #点击完成
            self.click_finish_button()
            time.sleep(5)
            if self.check_waitbar_displayed():
                time.sleep(85)
                break
            else:
                Lg = LoginBusiness(self.driver)
                #刷新页面重新登录ap页面
                Lg.refresh_login_ap()

        #指定有线网卡的固定ip--能够访问ap的webpage
        self.dhcp_release_wlan(data_basic['lan_pc'])
        self.set_eth_ip(data_basic['lan_pc'], data_basic['static_PC_ip'])
        #关闭AP的eth1端口,以免她来分配ip地址,和桥接的dhcp server相冲突
        self.down_ap_eth1(ip, user, pwd)
        print("set client mode successfull!")
 def check_user_range(self, lgoin_name, login_pwd):
     #点击页面上的退出按钮
     tmp = NavbarBusiness(self.driver)
     tmp.logout()
     #使用user用户登录GWN7610的web界面
     tmp1 = LoginBusiness(self.driver)
     tmp1.login(lgoin_name, login_pwd)
     result = AccessBusiness.user_login_test(self)
     print result
     return result
Пример #24
0
 def test_003_wrong_user_pwd_login(self):
     """输入错误的管理员的用户名和密码,登录AP的web界面"""
     #逻辑类对象,建一个实例
     Lg = LoginBusiness(self.driver)
     #调用实例的登录AP的web界面
     Lg.login(data_basic['superUser'], data_login['digital_letter'])
     #检测是否登录成功
     result = Lg.login_test()
     self.assertFalse(result)
     log.debug("003\t\tpass")
Пример #25
0
 def setUp(self):
     # firefox_profile = webdriver.FirefoxProfile(data_basic['firefox_profile'])
     # self.driver = webdriver.Firefox(firefox_profile=firefox_profile)
     self.driver = webdriver.Firefox()
     self.driver.maximize_window()
     self.driver.get(data_basic['DUT_web'])
     self.driver.implicitly_wait(60)
     #登录AP
     Lg = LoginBusiness(self.driver)
     Lg.login(data_basic['superUser'],data_login['all'])
    def change_workmode_to_client_LANDHCP(self,
            bridge_essid, bridge_encryption_mode,bridge_bssid,
            bridge_pwd, user, pwd):
        """
        修改工作模式为client模式,内网设置动态获取
        """
        for i in range(3):
            #点击工作模式菜单
            self.menu_workmode()
            #选择桥接模式
            self.set_mode("client")
            time.sleep(10)
            #内网设置点击点击动态获取按钮
            self.set_client_LAN_dhcp()
            #点击下一步
            self.click_next_button()

            #桥接设置
            # #点击扫描
            # self.click_bridge_bridge_scan_button()
            # time.sleep(10)
            # #扫描页面中,根据扫描到的ap的mac地址点击对应的操作按钮
            # self.set_bridge_bridge_scan_operat(bridge_bssid)
            #桥接设置输入要桥接的ssid
            self.set_client_bridge_ssid(bridge_essid)
            #桥接设置要桥接的无线的加密方式
            self.set_client_bridge_encryption(bridge_encryption_mode)
            #输入桥接ap的无线密码
            self.set_client_bridge_password(bridge_pwd)
            #桥接设置要桥接的对端无线mac地址
            self.set_client_bridge_BSSID(bridge_bssid)
            #点击下一步
            self.click_next_button()

            #点击完成
            self.click_finish_button()
            time.sleep(5)
            if self.check_waitbar_displayed():
                time.sleep(85)
                break
            else:
                Lg = LoginBusiness(self.driver)
                #刷新页面重新登录ap页面
                Lg.refresh_login_ap()

        #设置PC的静态IP和桥接的路由的IP端一致
        self.dhcp_release_wlan(data_basic['lan_pc'])
        self.set_eth_ip(data_basic['lan_pc'], data_wireless['bridge_static_ip'])
        #非路由模式下,获取ap的当前ip地址
        ap_ip = self.get_ap_ip(data_wireless['bridge_ip'], data_basic['ssh_user'],
            data_basic['ssh_pwd'], data_basic['ap_brlan_mac'])
        #关闭AP的eth1端口,以免她来分配ip地址,和桥接的dhcp server相冲突
        self.down_ap_eth1(ap_ip, user, pwd)
        print("set bridge mode successfull!")
        return ap_ip
Пример #27
0
 def test_004_admin_login(self):
     u"""输入管理员的用户名和密码,登录GWN7610的web界面"""
     log.debug("004")
     #逻辑类对象,建一个实例
     Lg = LoginBusiness(self.driver)
     #调用实例的登录GWN7610的web界面
     Lg.login(data_basic['superUser'],data_login['all'])
     #检测是否登录成功
     result = Lg.login_test()
     assert result ,"login AP webpage,test fail!"
     print "login AP webpage,test pass!"
Пример #28
0
 def test_063_check_user_range(self):
     u"""user账号的权限验证(testlink_ID:896)"""
     log.debug('063')
     tmp = AccessBusiness(self.driver)
     result1 = tmp.check_user_range(data_basic['user'],
                                    data_login['digital_pwd'])
     #判断是否登录成功
     tmp1 = LoginBusiness(self.driver)
     result2 = tmp1.login_test()
     print result1, result2
     assert (result1 == False) and result2, "test user range,test fail!"
     print "test user range,test pass!"
Пример #29
0
    def test_010_clientmode_system_upgrade_check_config(self):
        """客户端模式下,系统升级,检查配置"""
        tmp = SystemUpgradeBusiness(self.driver)
        #选择固件路径,升级固件
        PATH = os.path.join(
            os.getcwd(), AP_model + '-' + data_basic['new_version'] + '.bin')
        print(PATH)
        tmp.upgrade_system(PATH)

        #设置PC的静态IP,能够访问DUT的webpage
        tmp.set_eth_ip(data_basic['lan_pc'], data_basic['static_PC_ip'])
        #关闭AP的eth1端口,以免她来分配ip地址,和桥接的dhcp server相冲突
        tmp4 = WorkModeBusiness(self.driver)
        tmp4.down_ap_eth1(data_basic['DUT_ip'], data_basic['ssh_user'],
                          data_basic['ssh_pwd'])
        #逻辑类对象,建一个实例
        Lg = LoginBusiness(self.driver)
        #刷新页面重新登录ap页面
        Lg.refresh_login_ap()
        tmp1 = StateInfoBusiness(self.driver)
        #获取当前模式
        result1 = tmp1.obtain_AP_current_mode()
        #获取桥接的连接状态
        result2 = tmp1.obtain_WAN_IP_generation()
        #获取信号强度
        result3 = tmp1.obtain_WAN_IP_address()

        #登录ap后台,判断ap的工作模式
        tmp3 = WorkModeBusiness(self.driver)
        result5 = tmp3.check_DUT_workmode(data_basic['DUT_ip'],
                                          data_basic['ssh_user'],
                                          data_basic['ssh_pwd'])
        #检查固件版本
        result6 = tmp.check_system_version(data_basic['new_version'])

        #修改工作模式为路由模式,外网设置dhcp模式
        tmp4.change_workmode_to_route_WANdhcp(data_wirless['all_ssid'], "psk2",
                                              data_wirless['short_wpa'],
                                              "HT40", "auto")
        #client重新获取ip
        tmp.dhcp_release_wlan(data_basic['lan_pc'])
        tmp.dhcp_wlan(data_basic['lan_pc'])
        tmp.disconnect_ap()
        #删除下载固件
        os.unlink(PATH)

        self.assertEqual(result1, "客户端模式")
        self.assertEqual(result2, "已连接")
        self.assertIn("dBm", result3)
        self.assertIn("wds_c", result5)
        self.assertTrue(result6)
        log.debug("010\t\tpass")
Пример #30
0
 def test_065_userpwd_to_admin(self):
     u"""用user账号的密码登录admin(testlink_ID:898)"""
     log.debug('065')
     #点击页面上的退出按钮
     tmp1 = NavbarBusiness(self.driver)
     tmp1.logout()
     tmp = LoginBusiness(self.driver)
     tmp.login(data_basic['superUser'], data_login['digital_pwd'])
     #判断是否登录成功
     result = tmp.login_test()
     print result
     assert result == False, "use user's pwd login admin,test fail!"
     print "use user's pwd login admin,test pass!"