예제 #1
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
 def test_009_check_ssid1(self):
     u"""新建立的ssid1+有线或无线+用户客户端显示(testlink_ID:496)"""
     log.debug("009")
     NG2_ssid = "%s-2" % data_ng["NG2_ssid"]
     #新建一个SSID
     tmp = SSIDBusiness(self.driver)
     tmp.new_ssid(NG2_ssid, data_wireless["short_wpa"])
     #将master ap加入所有的ssids
     tmp1 = APSBusiness(self.driver)
     tmp1.add_master_to_all_NG()
     #使用无线网卡能够连接上NG2的ssid,并正常使用
     tmp1.connect_WPA_AP(NG2_ssid, data_wireless['short_wpa'],
                         data_basic['wlan_pc'])
     tmp2 = ClientsBusiness(self.driver)
     #得到无线客户端的mac
     mac = tmp2.get_wlan_mac(data_basic['wlan_pc'])
     client_mac, ssid_name, connecttype, conap = tmp2.check_ssid(mac)
     print client_mac, ssid_name, connecttype, conap
     Mac = mac.upper()
     #得到master ap的mac
     MasterAP = data_AP['master:mac'].upper()
     assert (client_mac == Mac) and (ssid_name == NG2_ssid) and \
         (connecttype == (u"无线" or "Wireless")) and (conap == MasterAP),\
         "Check newssid+wireless+client display,test fail!"
     print "Check newssid+wireless+client display,test pass!"
예제 #3
0
 def get_Global_Blacklist_mac(self):
     #点击客户端菜单
     tmp = ClientsBusiness(self.driver)
     tmp.clients_menu()
     #点击客户端访问菜单
     ClientAccessControl.clientaccess_menu(self)
     result = ClientAccessControl.get_Global_Blacklist(self)
     return result
 def test_006_check_disconnect_connect_uptime(self):
     u"""客户端离线后再上线,其连接时间重新开始更新(testlink_ID:491)"""
     log.debug("006")
     tmp = ClientsBusiness(self.driver)
     result = tmp.disconnect_connect_uptime(data_basic['wlan_pc'])
     print result
     assert result, "restart connected time after disconnect and then connect client,test fail!"
     print "restart connected time after disconnect and then connect client,test pass!"
 def test_010_check_ssid_filter1(self):
     u"""ssid的客户端信息过滤1--选择ssid0没有客户端(testlink_ID:497_1)--bug"""
     log.debug("010")
     tmp = ClientsBusiness(self.driver)
     result = tmp.check_ssid_filter(data_wireless['all_ssid'],
                                    data_basic['wlan_pc'])
     assert result == False, "Check client through ssid filter1,test fail!"
     print "Check client through ssid filter1,test pass!"
예제 #6
0
 def get_access_list1_mac(self):
     #点击客户端菜单
     tmp = ClientsBusiness(self.driver)
     tmp.clients_menu()
     #点击客户端访问菜单
     ClientAccessControl.clientaccess_menu(self)
     result = ClientAccessControl.get_Access_List1(self)
     return result
 def test_011_check_ssid_filter2(self):
     u"""ssid的客户端信息过滤--选择ssid1有客户端(testlink_ID:497_2)--bug"""
     log.debug("011")
     tmp = ClientsBusiness(self.driver)
     NG2_ssid = "%s-2" % data_ng["NG2_ssid"]
     result = tmp.check_ssid_filter(NG2_ssid, data_basic['wlan_pc'])
     assert result, "Check client through ssid filter2,test fail!"
     print "Check client through ssid filter2,test pass!"
 def test_019_check_confirm_box(self):
     u"""Block client时的确认框(testlink_ID:517)"""
     log.debug("019")
     tmp = ClientsBusiness(self.driver)
     #Block client时的确认框
     wlan_mac = tmp.get_wlan_mac(data_basic['wlan_pc'])
     result = tmp.check_confirm_box(wlan_mac)
     assert result == True, "check confirm box Blocking client,test fail!"
     print "check confirm box Blocking client,test pass!"
 def del_all_timepolicy(self):
     #点击客户端菜单
     tmp = ClientsBusiness(self.driver)
     tmp.clients_menu()
     #点击时间策略菜单
     TimePolicyControl.timepolicy_menu(self)
     #依次点击所有组的删除按钮
     TimePolicyControl.del_all_button(self)
     TimePolicyControl.apply(self)
 def test_022_connect_AP_again(self):
     u"""被blocked的wireless终端重连WLAN(testlink_ID:520)"""
     log.debug("022")
     tmp = ClientsBusiness(self.driver)
     #使用无线网卡能够连接上ssid,并正常使用
     result = tmp.connect_WPA_AP_backup(data_wireless['all_ssid'],
                                        data_wireless['short_wpa'],
                                        data_basic['wlan_pc'])
     assert 'Not connected' in result, "after blocking client,client connect ap again,test fail!"
     print "after blocking client,client connect ap again,test pass!"
 def test_016_set_client_err_name2(self):
     u"""设置用户名为___(testlink_ID:515)"""
     log.debug("016")
     tmp = ClientsBusiness(self.driver)
     #客户端名称设置为不合法时
     wlan_mac = tmp.get_wlan_mac(data_basic['wlan_pc'])
     result1, result2 = tmp.check_set_client_name(wlan_mac,
                                                  data_client['err_name2'])
     assert result1 and result2, "set client name is ___,test fail!"
     print "set client name is ___,test pass!"
 def test_013_set_client_digital(self):
     u"""设置用户名为全数字(testlink_ID:512)"""
     log.debug("013")
     tmp = ClientsBusiness(self.driver)
     #客户端名称设置为不合法时
     wlan_mac = tmp.get_wlan_mac(data_basic['wlan_pc'])
     result1, result2 = tmp.check_set_client_name(
         wlan_mac, data_client['digital_name'])
     assert result1 and result2, "set client name is digital,test fail!"
     print "set client name is digital,test pass!"
예제 #13
0
 def del_firest_list(self):
     #点击客户端菜单
     tmp = ClientsBusiness(self.driver)
     tmp.clients_menu()
     #点击客户端访问菜单
     ClientAccessControl.clientaccess_menu(self)
     ClientAccessControl.del_first_button(self)
     #弹出的提示窗口中,点击确认
     ClientAccessControl.notice_ok(self)
     #弹出窗口中,点击应用
     ClientAccessControl.apply(self)
예제 #14
0
 def del_Access_list_n(self, name):
     #点击客户端菜单
     tmp = ClientsBusiness(self.driver)
     tmp.clients_menu()
     #点击客户端访问菜单
     ClientAccessControl.clientaccess_menu(self)
     #删除对应的access list
     ClientAccessControl.del_access_list_n(self, name)
     #弹出的提示窗口中,点击确认
     ClientAccessControl.notice_ok(self)
     #弹出窗口中,点击应用
     ClientAccessControl.apply(self)
 def change_timeout_hourly(self, n):
     #点击客户端菜单
     tmp = ClientsBusiness(self.driver)
     tmp.clients_menu()
     #点击时间策略菜单
     TimePolicyControl.timepolicy_menu(self)
     #点击编辑按钮
     TimePolicyControl.edit_button(self, n)
     #设置客户端重连超时类型
     TimePolicyControl.set_reconnect_type(self, n, "hourly")
     #点击保存
     TimePolicyControl.click_save(self)
     TimePolicyControl.apply(self)
예제 #16
0
 def get_bannedclients_title(self):
     #刷新页面重新登录ap页面
     Lg = LoginBusiness(self.driver)
     Lg.refresh_login_ap()
     #点击客户端菜单
     tmp = ClientsBusiness(self.driver)
     tmp.clients_menu()
     #点击时间策略菜单
     BannedClientsControl.bannedclients_menu(self)
     #获取页面所有标题
     result = BannedClientsControl.get_titlediv(self)
     print result
     return result
예제 #17
0
 def unblock_clients(self, n):
     #点击客户端菜单
     tmp = ClientsBusiness(self.driver)
     tmp.clients_menu()
     #点击时间策略菜单
     BannedClientsControl.bannedclients_menu(self)
     try:
         #点击解锁按钮
         BannedClientsControl.unblock_button(self, n)
         #弹出的提示窗口中,点击确认
         BannedClientsControl.notice_ok(self)
     except:
         pass
 def enable_disable_timepolicy(self, n):
     #点击客户端菜单
     tmp = ClientsBusiness(self.driver)
     tmp.clients_menu()
     #点击时间策略菜单
     TimePolicyControl.timepolicy_menu(self)
     #点击编辑按钮
     TimePolicyControl.edit_button(self, n)
     #点击开启或关闭
     TimePolicyControl.click_enable_disable(self, n)
     #点击保存
     TimePolicyControl.click_save(self)
     TimePolicyControl.apply(self)
예제 #19
0
 def check_portal_client_block_function(self, ssid, password, wlan, eth):
     #通过免认证方式上网
     CPBusiness.\
         access_No_auth_portal(self,ssid,password,wlan,eth,"wpa")
     #无线网卡释放ip地址
     CPControl.dhcp_release_wlan(self, wlan)
     #断开无线连接
     CPControl.disconnect_ap(self)
     #启用有线网卡
     CPControl.wlan_enable(self, eth)
     tmp = ClientsBusiness(self.driver)
     #使用无线网卡能够连接上ssid,并正常使用
     tmp.connect_DHCP_WPA_AP(ssid, password, wlan)
     #无线网卡释放ip地址
     CPControl.dhcp_release_wlan(self, wlan)
     #刷新页面重新登录ap页面
     Lg = LoginBusiness(self.driver)
     Lg.refresh_login_ap()
     #只有一个客户端,阻塞该客户端
     wlan_mac = tmp.get_wlan_mac(wlan)
     tmp.block_client(wlan_mac)
     time.sleep(60)
     #测试机上判断无线客户端是否依然是连接上的
     result = tmp.get_client_cmd_result("iw dev %s link" % wlan)
     #无线网卡释放ip地址
     CPControl.dhcp_release_wlan(self, wlan)
     #断开无线连接
     CPControl.disconnect_ap(self)
     #刷新页面重新登录ap页面
     Lg = LoginBusiness(self.driver)
     Lg.refresh_login_ap()
     tmp1 = ClientAccessBusiness(self.driver)
     #删除Global Blacklist里面的所有的mac
     tmp1.del_Global_Blacklist_mac()
     return result
예제 #20
0
 def del_accesslist_manymac(self):
     #点击客户端菜单
     tmp = ClientsBusiness(self.driver)
     tmp.clients_menu()
     #点击客户端访问菜单
     ClientAccessControl.clientaccess_menu(self)
     #只有一个新增访问列表时,点击编辑
     ClientAccessControl.edit_button(self)
     #添加窗口,一直点击-号,删除所有的mac,只保留第一个mac地址
     ClientAccessControl.del_all_addmac(self)
     #点击保存
     ClientAccessControl.save(self)
     #弹出窗口中,点击应用
     ClientAccessControl.apply(self)
예제 #21
0
 def del_accesslist_n_manymac(self, name):
     #点击客户端菜单
     tmp = ClientsBusiness(self.driver)
     tmp.clients_menu()
     #点击客户端访问菜单
     ClientAccessControl.clientaccess_menu(self)
     #编辑对应的access list
     ClientAccessControl.edit_access_list_n(self, name)
     #添加窗口,一直点击-号,删除所有的mac,只保留第一个mac地址
     ClientAccessControl.del_all_addmac(self)
     #点击保存
     ClientAccessControl.save(self)
     #弹出窗口中,点击应用
     ClientAccessControl.apply(self)
예제 #22
0
 def edit_accesslist_onemac(self, mac):
     #点击客户端菜单
     tmp = ClientsBusiness(self.driver)
     tmp.clients_menu()
     #点击客户端访问菜单
     ClientAccessControl.clientaccess_menu(self)
     #只有一个新增访问列表时,点击编辑
     ClientAccessControl.edit_button(self)
     #在添加窗口输入一个mac地址
     ClientAccessControl.set_mac(self, mac)
     #点击保存
     ClientAccessControl.save(self)
     #弹出窗口中,点击应用
     ClientAccessControl.apply(self)
 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!"
예제 #24
0
 def del_Global_Blacklist_mac(self):
     #点击客户端菜单
     tmp = ClientsBusiness(self.driver)
     tmp.clients_menu()
     #点击客户端访问菜单
     ClientAccessControl.clientaccess_menu(self)
     #编辑Global Blacklist
     ClientAccessControl.edit_Global_Blacklist_button(self)
     #添加窗口,一直点击-号,删除所有的mac,不保留第一个mac地址
     ClientAccessControl.del_all_addmac_backup(self)
     #点击保存
     ClientAccessControl.save(self)
     #弹出窗口中,点击应用
     ClientAccessControl.apply(self)
예제 #25
0
 def change_list_name(self, name1, name2):
     #点击客户端菜单
     tmp = ClientsBusiness(self.driver)
     tmp.clients_menu()
     #点击客户端访问菜单
     ClientAccessControl.clientaccess_menu(self)
     #编辑对应的access list
     ClientAccessControl.edit_access_list_n(self, name1)
     #修改list的名称
     ClientAccessControl.set_list_name(self, name2)
     #点击保存
     ClientAccessControl.save(self)
     #弹出窗口中,点击应用
     ClientAccessControl.apply(self)
예제 #26
0
 def test_039_failover_master_check_client_num(self):
     u"""failover ap 切换到master ap模式后,客户端数目不会改变(testlink_ID:2394)"""
     log.debug("039")
     tmp = APSBusiness(self.driver)
     #登录failover ap的web界面
     tmp.login_failover_ap(data_basic['slave_web2'],
         data_basic['superUser'], data_login['all'])
     tmp1 = ClientsBusiness(self.driver)
     #点击客户端菜单
     tmp1.clients_menu()
     #获取客户端的数量
     result = tmp1.get_clients_num()
     self.assertEqual(1, result), "after failover change to master check client number, test fail!"
     print "after failover change to master check client number, test pass!"
예제 #27
0
 def test_016_check_Clients_webpage(self):
     u"""Client数量和状态必须与客户端页面的信息一致(testlink_ID:1160)"""
     log.debug("016")
     tmp = OVBusiness(self.driver)
     #获取2.4G客户端数
     result1 = tmp.get_2g4_client()
     #获取5G客户端数
     result2 = tmp.get_5g_client()
     result = (int(result1)+int(result2))
     tmp1 = ClientsBusiness(self.driver)
     tmp1.clients_menu()
     num = tmp1.get_clients_num()
     assert result == num,"check client number is different as Clients webpage,test fail!"
     print "check client number is same as Clients webpage,test pass!"
예제 #28
0
 def edit_accesslist_n_manymac(self, name, n):
     #点击客户端菜单
     tmp = ClientsBusiness(self.driver)
     tmp.clients_menu()
     #点击客户端访问菜单
     ClientAccessControl.clientaccess_menu(self)
     #编辑对应的access list
     ClientAccessControl.edit_access_list_n(self, name)
     for i in range(n):
         #添加窗口,点击+号,输入一个mac地址
         ClientAccessControl.set_add_addmac(self)
     #点击保存
     ClientAccessControl.save(self)
     #弹出窗口中,点击应用
     ClientAccessControl.apply(self)
예제 #29
0
 def check_del_first_list(self):
     #点击客户端菜单
     tmp = ClientsBusiness(self.driver)
     tmp.clients_menu()
     #点击客户端访问菜单
     ClientAccessControl.clientaccess_menu(self)
     ClientAccessControl.del_first_button(self)
     # #弹出的提示窗口中,点击确认
     # ClientAccessControl.notice_ok(self)
     #判断是否会弹出提示框,有则返回True,没有则返回False
     element = self.driver.find_element_by_xpath(
         ".//div[@class='modal-footer']//button[@class='btn btn-primary']")
     result = element.is_displayed()
     print result
     return result
예제 #30
0
 def edit_accesslist_n_onemac(self, name, mac):
     #点击客户端菜单
     tmp = ClientsBusiness(self.driver)
     tmp.clients_menu()
     #点击客户端访问菜单
     ClientAccessControl.clientaccess_menu(self)
     #编辑对应的access list
     ClientAccessControl.edit_access_list_n(self, name)
     #在添加窗口输入一个mac地址
     ClientAccessControl.set_mac(self, mac)
     #点击保存
     ClientAccessControl.save(self)
     #弹出窗口中,点击应用
     ClientAccessControl.apply(self)
     print "edit access list:%s successfully!" % name