class C61014_Diy_Part(TestCase): ''' DIY部分默认勾选创建积分房 ''' owner = "ShelleyZhang" status = EnumStatus.Design priority = EnumPriority.High timeout = 10 def pre_test(self): self.common = Common() self.hall_page = Hall_Page() self.yuepai_page = Yuepai_Page() 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("约牌").click() self.start_step("创建免费记分房") self.yuepai_page.wait_element('记分房', 20).click() time.sleep(6) self.start_step("获取左边游戏列表") elements = self.yuepai_page.game_list() self.log_info("记分房有个列表个数为:%d个" % len(elements)) for i in range(0,len(elements)): self.start_step("查看%s记分房" % elements[i].get_attribute("text")) elements[i].click() ele2 = self.yuepai_page.get_elements("Div控件局数") try: ele2[3].click() ele2[7].click() ele2[17].click() ele2[30].click() except: self.log_info("找不到此元素") self.yuepai_page.screenshot("%d_div.png" % i) self.yuepai_page.enter_room() self.yuepai_page.screenshot("%d.png" % i) try: self.yuepai_page.wait_element("规则", 30).click() self.yuepai_page.screenshot("%d_rule.png" % i) self.yuepai_page.wait_element("规则关闭").click() except: self.log_info("当前游戏无规则选项") self.yuepai_page.exit_yuepai_page() try: self.yuepai_page.wait_element('记分房').click() except: self.log_info("未返回到记分房页面") def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' self.common.closedriver()
class C61014_Jushu_Zero(TestCase): ''' 记分房选择局数输入0 ''' owner = "ShelleyZhang" status = EnumStatus.Design priority = EnumPriority.High timeout = 10 def pre_test(self): self.common = Common() self.hall_page = Hall_Page() self.yuepai_page = Yuepai_Page() # self.broadcast_page = Broadcast_Page() self.start_step("初始化driver") # capabilities = {} # capabilities['noReset'] = True 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.wait_element('记分房', 20).click() time.sleep(6) self.start_step("获取左边游戏列表") elements = self.yuepai_page.game_list() self.log_info("记分房有个列表个数为:%d个" % len(elements)) for i in range(0,len(elements)): print elements[i].get_attribute("text") elements[i].click() ele2 = self.yuepai_page.get_elements('自定义1') try: ele2[4].click() ele3 = self.yuepai_page.wait_element("输入文字").send_keys("0") except: self.log_info("当前游戏不存在此元素") self.yuepai_page.screenshot("%d.png" % i) def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' self.common.closedriver()
class C70447_No_Appear(TestCase): ''' 进入房间内准备15分钟后未开始游戏,查看显示 ''' owner = "ShelleyZhang" status = EnumStatus.Design priority = EnumPriority.High timeout = 23 def pre_test(self): self.common = Common() self.hall_page = Hall_Page() self.yuepai_page = Yuepai_Page() capabilities = {} capabilities['newCommandTimeout'] = 16 * 60 self.start_step("初始化driver") self.luadriver = self.common.setupdriver(capabilities) # 每个用例都需要关闭活动,把这个放在初始化里面实现 self.common.closeactivity(self.luadriver) def run_test(self): ''' 测试用例 ''' self.start_step("等待页面加载完成") self.start_step("进入约牌页面") self.hall_page.wait_element("约牌").click() self.start_step("创建免费记分房") self.yuepai_page.wait_element('记分房', 20).click() self.start_step("获取左边游戏列表") elements = self.yuepai_page.get_elements("记分房创建页面游戏列表") print elements print len(elements) for i in range(0, len(elements)): print elements[i].get_attribute("text") elements[i].click() self.yuepai_page.enter_room() self.yuepai_page.screenshot("01.png") time.sleep(15 * 60) self.yuepai_page.screenshot("02.png") self.start_step("退出房间") self.yuepai_page.is_exist_yuepairoom() break def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' self.common.closedriver()
class C27503and275034_Commontab_Display(TestCase): ''' C27503and275034 常用语界面文字查看 常用语界面滑动查看 ''' owner = "Lucyliu" status = EnumStatus.Design priority = EnumPriority.High timeout = 15 def pre_test(self): self.common = Common() self.hall_page = Hall_Page() self.personinfo_page = Personinfo_Page() self.game_page = Game_Page() self.yuepai_page = Yuepai_Page() # 初始化Luadriver self.start_step("初始化driver") self.luadriver = self.common.setupdriver() # 每个用例都需要关闭活动,把这个放在初始化里面实现 self.common.closeactivity(self.luadriver) def see_chat(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]) try: self.hall_page.wait_element("关闭对话框").click() except: print "关闭弹框" continue try: self.game_page.wait_element("同步标志", 20) self.log_info("进入游戏ID:%s 的房间" % game_list[i].get_attribute("name")) try: self.log_info("进入游戏ID:%s 的第一个玩法" % game_list[i]) elements = self.game_page.game_play_way() elements[0][1].click() except: self.log_info("当前子游戏初级场") self.game_page.wait_element("房间场次").click() starttime = time.time() while self.yuepai_page.element_is_exist("房间内聊天") == False: time.sleep(1) endtime = time.time() if (endtime - starttime) > 20: continue self.yuepai_page.wait_element("房间内聊天", 20).click() time.sleep(3) self.game_page.screenshot("%s_chat.png" % game_list[i].get_attribute("name")) elements = self.yuepai_page.get_elements("发送常用聊天") if len(elements) > 2: self.common.swipeelement(elements[len(elements) - 3], elements[0]) self.game_page.screenshot( "%s_swipe.png" % game_list[i].get_attribute("name")) self.game_page.element_is_exist("头像frame").click() else: self.log_info("聊天界面展示不完全") self.game_page.screenshot( "%s_swipe1.png" % game_list[i].get_attribute("name")) except: try: self.hall_page.wait_element("关闭对话框").click() except: self.log_info("未找到元素") 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.see_chat() while (self.hall_page.element_is_exist("同步标志") == False): self.game_page.wait_element("返回1").click() 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.see_chat(is_next=True) def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' self.common.closedriver()
class C27434_FriendInvitation(TestCase): #暂时不能写 ''' 结算时邀请好友弹框关闭情况 ''' owner = "YoungLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 15 def pre_test(self): self.common = Common() self.hall_page = Hall_Page() self.game_page = Game_Page() self.yuepai_page = Yuepai_Page() self.start_step("初始化环境") self.luadriver = self.common.setupdriver() self.common.closeactivity_switchserver(self.luadriver) def run_test(self): self.start_step("等待页面加载完成") self.hall_page.wait_element("同步标志") self.start_step('获取mid') self.hall_page.wait_element('测试按钮').click() element = self.luadriver.find_lua_element_by_name('uid') text = element.get_attribute('text') global mid mid = int(re.search('\d+', text).group()) print mid self.hall_page.wait_element('关闭测试页面').click() self.start_step('进入约牌') self.hall_page.wait_element('约牌').click() time.sleep(4) self.start_step('进入记分房') self.yuepai_page.wait_element('记分房').click() elements = self.yuepai_page.get_elements('子游戏') for element in elements: if element.get_attribute('text') == '斗地主': element.click() try: self.yuepai_page.wait_element('确定').click() except: print '已下载' PHPInterface.set_robot_flag(0, 0, 0, 12, 1) Flag = True while Flag: try: self.yuepai_page.wait_element('百分比') except: Flag = False time.sleep(2) self.start_step('点击开房') self.yuepai_page.wait_element('开房').click() time.sleep(5) try: self.yuepai_page.wait_element('准备').click() except: print '已准备' time.sleep(5) self.yuepai_page.wait_element('+邀请').click() time.sleep(2) self.hall_page.screenshot('1.png') Flag = True while Flag: try: self.game_page.wait_element('game20结算框标志') Flag = False except: print '玩牌中' time.sleep(2) self.hall_page.screenshot('2.png') PHPInterface.set_robot_flag(0, 0, 0, 12, 0) def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' self.common.set_coin(mid, 10000) self.common.closedriver()
class C70573_DFQP_99999999CreateCoinRoom(TestCase): ''' 查看携带99999999创建银币房 ''' owner = "YoungLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 10 def pre_test(self): self.common = Common() global user_info, UserID, coin userinfo_and_mid = self.common.get_idle_userinfo_and_mid() user_info = userinfo_and_mid.get('userinfo') print user_info UserID = userinfo_and_mid.get('mid') print 'UserID:%s' % UserID user_info1 = PHPInterface.get_user_info(UserID) # 获取玩家信息 coin = json.loads(user_info1).get('result', { 'coin': None }).get('coin') # 获取当前银币值 print coin AddMoney = 99999999 - coin PHPInterface.add_money(UserID, AddMoney) # 将银币值设为99999999 time.sleep(2) user_info1 = PHPInterface.get_user_info(UserID) # 获取玩家信息 coin = json.loads(user_info1).get('result', { 'coin': None }).get('coin') # 获取当前银币值 print coin self.start_step("初始化环境") # 初始化Luadriver self.luadriver = self.common.setupdriver() self.yuepai_page = Yuepai_Page() self.hall_page = Hall_Page() self.personinfo_page = Personinfo_Page() self.common.closeactivity_switchserver(self.luadriver) self.hall_page.wait_element("头像").click() time.sleep(5) self.common.loginuser(user_info['user'], user_info['password']) time.sleep(5) self.common.closeActivityBtn() def run_test(self): self.start_step("等待页面加载完成") self.hall_page.wait_element("同步标志") self.start_step('进入约牌房界面') self.yuepai_page.wait_element('约牌').click() time.sleep(4) self.start_step('进入银币/金条房界面') self.yuepai_page.wait_element('银币/金条房').click() time.sleep(4) elements = self.yuepai_page.get_elements('子游戏') i = 1 Tag = False for element in elements: if Tag: self.yuepai_page.wait_element('银币/金条房').click() time.sleep(2) text = element.get_attribute('text') if not text.isdigit(): element.click() else: Tag = False continue try: self.yuepai_page.wait_element('确定').click() except: print '未找到确定按钮' Flag = True while Flag: try: percent = self.yuepai_page.wait_element( '百分比').get_attribute('text') print percent time.sleep(1) except: Flag = False self.yuepai_page.wait_element('开房').click() time.sleep(5) try: self.yuepai_page.wait_element('准备') Tag = True print '创建房间成功' except: print '创建房间失败' self.yuepai_page.wait_element('头像').click() time.sleep(2) print 'i = %s' % i self.yuepai_page.screenshot('{index}.png'.format(index=i)) total_money_value = self.yuepai_page.wait_element( '银币值').get_attribute('text') i += 1 #money_value = total_money_value.replace(',','') print total_money_value print type(total_money_value) self.luadriver.keyevent(4) time.sleep(1) self.luadriver.keyevent(4) time.sleep(5) if total_money_value == u'9999.9万': print '玩家银币数正常显示9999.9万' else: print '玩家银币数显示不正常' sys.exit() def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' print coin try: PHPInterface.add_money(UserID, 10000 - coin) self.common.deletefile(self.luadriver) time.sleep(1) self.common.closedriver() except: print 'Closedriver failed' finally: self.common.release_user(UserID)
class C27501_RoomFace_Enterroom(TestCase): ''' 使用过表情之后,退出房间,再次进入房间查看默认选项卡 ''' owner = "Lucyliu" status = EnumStatus.Design priority = EnumPriority.High timeout = 20 def pre_test(self): self.common = Common() self.hall_page = Hall_Page() self.personinfo_page = Personinfo_Page() self.game_page = Game_Page() self.yuepai_page = Yuepai_Page() # 初始化Luadriver self.start_step("初始化driver") self.luadriver = self.common.setupdriver() # 每个用例都需要关闭活动,把这个放在初始化里面实现 self.common.closeactivity(self.luadriver) def see_chat(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]) try: self.hall_page.wait_element("关闭对话框").click() except: print "关闭弹框" continue try: self.game_page.wait_element("同步标志", 20) self.log_info("进入游戏ID:%s 的房间" % game_list[i].get_attribute("name")) try: self.log_info("进入游戏ID:%s 的第一个玩法" % game_list[i]) elements = self.game_page.game_play_way() elements[0][1].click() except: self.log_info("当前子游戏初级场") j = 0 while j < 2: self.game_page.wait_element("房间场次").click() starttime = time.time() self.start_step("进入房间聊天") while self.yuepai_page.element_is_exist("房间内聊天") == False: time.sleep(1) endtime = time.time() if (endtime - starttime) / 1000 > 20: break self.yuepai_page.wait_element("房间内聊天", 40).click() time.sleep(3) self.game_page.screenshot( "%s_chat_%s.png" % (game_list[i].get_attribute("name"), j)) self.yuepai_page.wait_element("表情", 20).click() self.game_page.screenshot( "%s_chat1_%s.png" % (game_list[i].get_attribute("name"), j)) elements = self.yuepai_page.get_elements("发送表情") elements[0].click() self.game_page.screenshot( "%s_%s.png" % (game_list[i].get_attribute("name"), j)) self.start_step("退出房间") self.yuepai_page.is_exist_yuepairoom() j += 1 except: try: self.hall_page.wait_element("关闭对话框").click() except: self.log_info("未找到元素") 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.see_chat() while (self.hall_page.element_is_exist("同步标志") == False): self.game_page.wait_element("返回1").click() 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.see_chat(is_next=True) def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' self.common.closedriver()
class C70671_DFQP_Exceed_15_Minutes(TestCase): ''' 玩家创建房间后超过15分钟未开始,自动解散房间 ''' owner = "YoungLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 25 def pre_test(self): self.start_step("初始化环境") self.common = Common() # 初始化Luadriver capabilities = {} capabilities['newCommandTimeout'] = 902 self.luadriver = self.common.setupdriver(capabilities) self.yuepai_page = Yuepai_Page() self.hall_page = Hall_Page() self.personinfo_page = Personinfo_Page() self.common.closeactivity_switchserver(self.luadriver) def run_test(self): self.start_step("等待页面加载完成") self.hall_page.wait_element("同步标志") self.start_step('进入约牌房界面') self.yuepai_page.wait_element('约牌').click() time.sleep(4) self.start_step('进入记分房界面') self.yuepai_page.wait_element('记分房').click() time.sleep(4) elements = self.yuepai_page.get_elements('子游戏') i = 1 Tag = False for element in elements: if Tag: self.yuepai_page.wait_element('记分房').click() time.sleep(2) text = element.get_attribute('text') if not text.isdigit(): element.click() else: Tag = False continue try: self.yuepai_page.wait_element('确定').click() except: print '未找到确定按钮' Flag = True while Flag: try: percent = self.yuepai_page.wait_element( '百分比').get_attribute('text') print percent time.sleep(1) except: Flag = False self.yuepai_page.wait_element('开房').click() time.sleep(5) try: self.yuepai_page.wait_element('准备') Tag = True print 'i = %s' % i self.hall_page.screenshot( 'before_dissolution{index}.png'.format(index=i)) print '创建房间成功' time.sleep(900) self.hall_page.screenshot( 'after_dissolution{index}.png'.format(index=i)) i += 1 except: print '创建房间失败' def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' self.common.closedriver()
class C70599_DFQP_InvitationUIDisplay(TestCase): ''' 约牌房邀请界面显示 ''' owner = "YoungLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 5 def pre_test(self): self.start_step("初始化环境") self.common = Common() # 初始化Luadriver self.luadriver = self.common.setupdriver() # 卸载微信和QQ self.luadriver.adb('uninstall com.tencent.mm') self.luadriver.adb('uninstall com.tencent.mobileqq') self.yuepai_page = Yuepai_Page() self.hall_page = Hall_Page() self.personinfo_page = Personinfo_Page() self.common.closeactivity_switchserver(self.luadriver) def run_test(self): self.start_step("等待页面加载完成") self.hall_page.wait_element("同步标志") self.start_step('进入约牌房界面') self.yuepai_page.wait_element('约牌').click() time.sleep(4) self.start_step('进入记分房界面') self.yuepai_page.wait_element('记分房').click() time.sleep(4) elements = self.yuepai_page.get_elements('子游戏') i = 1 Tag = False for element in elements: if Tag: self.yuepai_page.wait_element('记分房').click() time.sleep(2) text = element.get_attribute('text') if not text.isdigit(): element.click() else: Tag = False continue try: self.yuepai_page.wait_element('确定').click() except: print '未找到确定按钮' Flag = True while Flag: try: percent = self.yuepai_page.wait_element( '百分比').get_attribute('text') print percent time.sleep(1) except: Flag = False self.yuepai_page.wait_element('开房').click() time.sleep(5) try: self.yuepai_page.wait_element('准备') Tag = True print '创建房间成功' except: print '创建房间失败' self.yuepai_page.wait_element('邀请-积分房').click() time.sleep(1) print 'i = %s' % i self.yuepai_page.screenshot( 'invitation{index}.png'.format(index=i)) self.yuepai_page.wait_element('微信邀请').click() time.sleep(1) self.yuepai_page.screenshot( 'wechat_invitation{index}.png'.format(index=i)) self.yuepai_page.wait_element('QQ邀请').click() self.yuepai_page.wait_element('立即邀请').click() time.sleep(1) self.yuepai_page.screenshot( 'qq_invitation{index}.png'.format(index=i)) self.luadriver.keyevent(4) self.yuepai_page.wait_element('在线好友').click() time.sleep(1) self.yuepai_page.screenshot( 'friend_online{index}.png'.format(index=i)) i += 1 self.luadriver.keyevent(4) time.sleep(1) self.luadriver.keyevent(4) time.sleep(1) self.luadriver.keyevent(4) time.sleep(5) def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' self.common.closedriver()
class C70594_DFQP_HeadView(TestCase): ''' 查看玩家默认头像显示 ''' owner = "YoungLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 10 def pre_test(self): self.start_step("初始化环境") self.common = Common() # 初始化Luadriver self.luadriver = self.common.setupdriver() self.yuepai_page = Yuepai_Page() self.hall_page = Hall_Page() self.personinfo_page = Personinfo_Page() self.common.closeactivity_switchserver(self.luadriver) def run_test(self): self.start_step("等待页面加载完成") self.hall_page.wait_element("同步标志") self.start_step('进入约牌房界面') self.yuepai_page.wait_element('约牌').click() time.sleep(4) self.start_step('进入记分房界面') self.yuepai_page.wait_element('记分房').click() time.sleep(4) elements = self.yuepai_page.get_elements('子游戏') i = 1 Tag = False for element in elements: if Tag: self.yuepai_page.wait_element('记分房').click() time.sleep(2) text = element.get_attribute('text') if not text.isdigit(): element.click() else: Tag = False continue try: self.yuepai_page.wait_element('确定').click() except: print '未找到确定按钮' Flag = True while Flag: try: percent = self.yuepai_page.wait_element( '百分比').get_attribute('text') print percent time.sleep(1) except: Flag = False self.yuepai_page.wait_element('开房').click() time.sleep(5) try: self.yuepai_page.wait_element('准备') Tag = True print '创建房间成功' except: print '创建房间失败' self.yuepai_page.wait_element('头像').click() time.sleep(1) print 'i = %s' % i self.yuepai_page.screenshot('{index}.png'.format(index=i)) i += 1 self.luadriver.keyevent(4) time.sleep(5) def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' self.common.closedriver()