class C70527_Scoreroom_Enterroom(TestCase): ''' 玩家进入积分房间未准备,掉线重连 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 5 def pre_test(self): self.common = Common() self.hall_page = Hall_Page() self.yuepai_page = Yuepai_Page() # 初始化Luadriver self.start_step("初始化driver") self.luadriver = self.common.setupdriver() # 每个用例都需要关闭活动,把这个放在初始化里面实现 self.common.closeactivity(self.luadriver) def run_test(self): ''' 测试用例 ''' self.start_step("等待页面加载完成") self.hall_page.wait_element("同步标志") self.start_step("进入约牌页面") self.hall_page.wait_element("约牌").click() self.start_step("创建免费记分房") self.yuepai_page.create_room('记分房') self.common.switchnetwork(self.luadriver, u"无网络") self.common.switchnetwork(self.luadriver, u"WIFI模式") self.common.network_connect() self.yuepai_page.screenshot("reconnect.png") # self.yuepai_page.wait_element("准备").click() # self.start_step("退出约牌房") # self.yuepai_page.exit_yuepai_page() self.hall_page.wait_element("同步标志") def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' self.common.closedriver()
class D25756_ThreeRoom_Network_Reconnect(TestCase): ''' 房间内玩牌断线重回 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 30 # pending = True def pre_test(self): self.common = Common() self.hall_page = Hall_Page() self.game_page = Game_Page() self.level_page = Level_Page() self.start_step("初始化driver") self.luadriver = self.common.setupdriver() self.common.closeactivity() self.common.user_money(money=3000) def run_test(self): self.hall_page.wait_element("同步标志") self.start_step("进去三人场") while self.hall_page.element_is_exist("游戏列表"): elments1 = self.hall_page.get_elements("游戏列表") elments1[2].click() self.start_step("进入房间") while self.level_page.element_is_exist("房间列表"): self.level_page.wait_element("房间列表").click() self.start_step("开始玩牌") self.game_page.wait_element("开始").click() starttime = time.time() while self.game_page.element_is_exist("正在配桌中"): time.sleep(1) self.log_info("正在配桌中,等待") endtime = time.time() time.sleep(3) try: self.game_page.wait_element("换桌").click() except: self.log_info("换桌失败") if (endtime - starttime) / 60 > self.timeout - 5: self.game_page.is_in_gameroom(self.luadriver) self.log_info("等待超时") return self.start_step("叫地主") while self.game_page.element_is_exist("出牌", 1) == False: list = ["抢地主", "叫地主", "加倍"] self.log_info("叫地主中") for name in list: try: self.game_page.wait_element(name, 1).click() except: self.log_info("未出现抢地主按钮") if self.game_page.element_is_exist("继续游戏", 1): break # self.start_step("托管") # while self.game_page.element_is_exist("机器人") == False: # self.game_page.wait_element("托管").click() self.start_step("重连") self.game_page.screenshot("断开网络前.png") self.common.switchnetwork(self.luadriver, u"无网络") self.game_page.screenshot("断开网络时.png") self.common.switchnetwork(self.luadriver, u"WIFI模式") self.common.network_connect() time.sleep(5) self.game_page.screenshot("重新连接网络.png") self.start_step("进去三人场") while self.hall_page.element_is_exist("游戏列表"): elments1 = self.hall_page.get_elements("游戏列表") elments1[2].click() while self.level_page.element_is_exist("房间列表"): self.level_page.wait_element("房间列表").click() if (self.game_page.element_is_exist("立即领取", 1) or self.game_page.element_is_exist("立即购买", 1)): self.game_page.screenshot("重新进入游戏时破产了.png") return self.game_page.screenshot("重新连接网络.png") while self.game_page.element_is_exist("继续游戏", 1) == False: time.sleep(1) self.log_info("正在游戏中") if self.game_page.element_is_exist("机器人") == False: self.game_page.wait_element("托管").click() if self.game_page.element_is_exist("开始"): break if self.game_page.element_is_exist("立即购买", 1): break self.start_step("退出玩牌房间") self.game_page.is_in_gameroom(self.luadriver) def post_test(self): try: self.game_page.is_in_gameroom(self.luadriver) finally: self.common.closedriver()
class C27218_Gamelist_Ready_Reconnect(TestCase): ''' 玩家已准备游戏未开始,网络波动 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 30 def pre_test(self): self.common = Common() self.hall_page = Hall_Page() self.game_page = Game_Page() self.yuepai_page = Yuepai_Page() self.sign_page = Sign_Page() self.start_step("初始化driver") capabilities = {} capabilities['newCommandTimeout'] = 60 * 3 self.luadriver = self.common.setupdriver(capabilities) self.common.closeactivity(self.luadriver) def noready_lock_longtime(self, is_next=False): game_list = self.game_page.get_game_list() for i in range(len(game_list)): self.start_step("进入子游戏:%s" % game_list[i].get_attribute("name")) game_list[i].click() if (self.game_page.game_is_download() == False): self.log_info("下载游戏ID:%s 失败" % game_list[i]) self.game_page.screenshot("%s_downfail.png" % game_list[i].get_attribute("name")) try: self.hall_page.wait_element("关闭对话框").click() except: print "关闭弹框" continue self.game_page.wait_element("同步标志", 20) try: self.log_info("进入游戏ID:%s 的第一个玩法" % game_list[i].get_attribute("name")) elements = self.game_page.game_play_way() elements[0][1].click() except: self.log_info("当前子游戏初级场") self.log_info("进入游戏ID:%s 的房间" % game_list[i].get_attribute("name")) self.game_page.screenshot("%s_1.png" % game_list[i].get_attribute("name")) self.game_page.wait_element("房间场次").click() time.sleep(30) try: self.game_page.wait_element("准备").click() except: self.log_info("当前已准备") self.start_step("判断当前游戏是否准备,如果是,则继续玩游戏,否则,退出房间") self.yuepai_page.play_game() self.game_page.screenshot("%s_before.png" % game_list[i].get_attribute("name")) # self.start_step("锁屏") # self.luadriver.keyevent(26) # 锁屏 try: self.hall_page.wait_element("测试按钮").click() self.game_page.wait_element("重连").click() except: self.common.switchnetwork(self.luadriver, u"无网络") time.sleep(3) self.common.switchnetwork(self.luadriver, u"WIFI模式") self.common.network_connect() time.sleep(3) self.game_page.screenshot("%s_being.png" % game_list[i].get_attribute("name")) # time.sleep(2*60) # self.start_step("解锁") # self.common.unlock() time.sleep(4) self.game_page.screenshot("%s_after.png" % game_list[i].get_attribute("name")) self.yuepai_page.wait_element("换桌") try: self.start_step("退出房间") self.yuepai_page.is_exist_yuepairoom() self.game_page.wait_element("返回1").click() if is_next == True: self.log_info("is_next为True则表示遍历的是第二页的子游戏") try: self.game_page.wait_element("右三角标").click() except: self.log_info("当前为第二页") except: self.log_info("退出房间失败") def run_test(self): ''' 测试用例 ''' self.start_step("等待页面加载完成") self.hall_page.wait_element("同步标志") self.start_step("查看首屏子游戏列表") self.noready_lock_longtime() self.start_step("点击大厅第二页") if (self.game_page.element_is_exist("右三角标") == True): self.game_page.wait_element("右三角标").click() else: self.game_page.wait_element("左三角标").click() self.start_step("查看第二屏子游戏列表") self.noready_lock_longtime(is_next=True) def post_test(self): ''' 测试用例执行完后,清理测试环境 ''' self.common.closedriver()