class C31067_DFQP_Exchange_Gold_Exchange1(TestCase): ''' 携带银币充足兑换 总银币大于20w,携带银币大于103000 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 8 def pre_test(self): self.common = Common() global mid mid = self.common.get_config_value("casecfg", "mid") self.start_step("设置银币大于20w") self.common.set_coin(mid=mid, value='200001') self.hall_page = Hall_Page() self.exchange_page = Exchange_Page() self.safebox_page = Safebox_Page() self.personinfo_page = Personinfo_Page() self.start_step("初始化Luadriver") self.luadriver = self.common.setupdriver() self.start_step("关闭活动") 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.safebox_page.wait_element("银币").click() self.safebox_page.wait_element("存入").click() self.start_step("将银币存入保险箱") element1 = self.safebox_page.wait_element("滚动条") element2 = self.safebox_page.wait_element("增加金条/银条数目") swipe_startx = element1.location['x'] swipe_starty = element1.location['y'] swipe_endx = element2.location['x'] swipe_endy = element2.location['y'] print swipe_startx, swipe_starty, swipe_endx, swipe_endy, swipe_endx self.luadriver.swipe(swipe_startx, swipe_starty, swipe_startx + (swipe_endx - swipe_startx) / 2, swipe_endy, 1000) self.safebox_page.wait_element('确定---保险箱').click() self.luadriver.keyevent(4) self.start_step("进入金条兑换界面") self.exchange_page.wait_element("换金条").click() self.exchange_page.screenshot("Gold_Exchange1.png") def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' try: self.common.recover_user() self.common.closedriver() except: self.log_info("close driver fail")
class C30978_DFCP_Task_Interface_GetReward(TestCase): ''' 领取牌局任务奖励 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 10 def pre_test(self): self.common = Common() global mid mid = self.common.get_config_value("casecfg", "mid") PHPInterface.set_mission_to_complete(mid, 103000, 369, 1) self.hall_page = Hall_Page() self.task_page = Task_Page() self.game_page = Game_Page() self.personinfo_page = Personinfo_Page() # global user_info # user_info = self.common.get_user() # print user_info self.luadriver = self.common.setupdriver() self.common.closeactivity(self.luadriver) def run_test(self): self.start_step("等待页面加载完成") self.hall_page.wait_element("同步标志") self.hall_page.wait_element("任务").click() time.sleep(2) self.task_page.wait_element("每日任务tag").click() time.sleep(2) # self.common.swipeelement(self.task_page.wait_element("玩游戏任务列表2"),self.task_page.wait_element("玩游戏任务列表1")) time.sleep(5) # self.task_page.wait_element("玩游戏任务1").click() # time.sleep(2) # try: # self.game_page.wait_element("资源下载-确定").click() # time.sleep(15) # except: # print ("游戏已下载") # self.hall_page.screenshot('game1.png') elements = self.task_page.get_elements("领取奖励") count = 0 print len(elements) while (count < len(elements)): element_text = elements[count].get_attribute('text') if element_text == '领奖励': print '找到并点击了领奖励' elements[count].click() time.sleep(4) self.task_page.screenshot("lingqujiangli %s.png" % count) break count = count + 1 def post_test(self): self.common.recover_user(mid) # self.common.deletefile(self.luadriver) self.common.closedriver()
class Initialize(TestCase): ''' 用例初始化 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 10 def pre_test(self): self.common = Common() self.hall_page = Hall_Page() self.game_page = Game_Page() # 初始化Luadriver self.luadriver = self.common.setupdriver() # self.common.deletefile(self.luadriver) self.common.closeactivity_switchserver(self.luadriver) def run_test(self): ''' 测试用例 ''' self.hall_page.wait_element("同步标志") self.hall_page.screenshot("hall.png") self.start_step("获取mid") mid = self.common.get_mid() self.common.set_config_value("casecfg", "mid", str(mid)) print self.common.get_config_value("casecfg", "mid") env = self.common.get_config_value('casecfg', 'env') if env != "0": self.log_info("游戏机器人开关设置为关闭") self.start_step("设置第一页的游戏开关") gamelist = self.game_page.get_game_list() print gamelist for i in range(len(gamelist)): gamename = gamelist[i].get_attribute("name") gameid = filter(lambda ch: ch in '0123456789', gamename) print gameid self.game_page.set_robot(gameid=gameid) 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("查看第二屏子游戏列表") gamelist = self.game_page.get_game_list() print gamelist for i in range(len(gamelist)): gamename = gamelist[i].get_attribute("name") gameid = filter(lambda ch: ch in '0123456789', gamename) print gameid self.game_page.set_robot(gameid=gameid) self.common.recover_user(str(mid)) def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' self.common.closedriver()
class C31045_DFQP_Safebox_Bring3w(TestCase): ''' 携带银币数大于20000 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 10 def pre_test(self): self.common = Common() global mid mid = self.common.get_config_value("casecfg", "mid") self.common.set_coin(mid=mid, value='30000') self.hall_page = Hall_Page() self.sign_page = Sign_Page() self.personinfo_page = Personinfo_Page() self.safebox_page = Safebox_Page() # global user_info,UserID # user_info = self.common.get_user() # print user_info self.start_step("初始化Luadriver") self.luadriver = self.common.setupdriver() self.start_step("关闭活动,并切换到预发布") 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() time.sleep(3) self.start_step("将银币存入保险箱") self.safebox_page.wait_element("银币保险箱").click() time.sleep(3) self.safebox_page.wait_element("存入").click() time.sleep(3) try: self.safebox_page.wait_element("存入").click() time.sleep(3) except: print "无此按钮" self.start_step("拖动滑动条") self.common.swipeelement(self.safebox_page.wait_element("滚动条"), self.safebox_page.wait_element("增加金条/银条数目")) time.sleep(8) self.safebox_page.wait_element('确定---保险箱').click() time.sleep(5) self.safebox_page.screenshot('safebox1.png') def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' # self.common.release_user(user_info['mid']) # self.common.deletefile(self.luadriver) self.common.recover_user(mid=mid) self.common.closedriver()
class C31069_DFQP_Exchange_Gold_Exchange3(TestCase): ''' 成功兑换金条 总银币大于20w,携带银币等于103000 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 8 def pre_test(self): self.common = Common() # 初始化Luadriver self.luadriver = self.common.setupdriver() global mid mid = self.common.get_config_value("casecfg", "mid") self.start_step("设置银币大于20w") self.common.set_safeBoxMoney("200001") self.common.set_coin(mid=mid, value='103000') self.hall_page = Hall_Page() self.exchange_page = Exchange_Page() self.safebox_page = Safebox_Page() self.personinfo_page = Personinfo_Page() self.start_step("关闭活动") self.common.closeactivity(self.luadriver) def run_test(self): self.start_step("等待页面加载完成") self.hall_page.wait_element("同步标志") self.start_step("进入金条兑换界面") self.exchange_page.wait_element("换金条").click() dict1 = PHPInterface.get_user_info(mid) # 获取玩家信息 crystal = eval(dict1).get('result', { 'crystal': None }).get('crystal') # 获取当前金币 time.sleep(3) self.exchange_page.wait_element("确定兑换").click() time.sleep(2) self.exchange_page.screenshot("Gold_Exchange1.png") dict1 = PHPInterface.get_user_info(mid) # 获取玩家信息 crystal1 = eval(dict1).get('result', { 'crystal': None }).get('crystal') # 获取当前金币 self.assert_equal(True, crystal + 200, crystal1) def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' try: self.common.recover_user() self.common.closedriver() except: self.log_info("close driver fail")
class C30975_DFCP_Task_TaskandBroke(TestCase): ''' 破产状态做牌局任务 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 10 def pre_test(self): self.common = Common() global mid mid = self.common.get_config_value("casecfg", "mid") self.common.set_coin(mid, "2000") # global user_info # user_info = self.common.get_user() # print user_info self.luadriver = self.common.setupdriver() self.common.closeactivity_switchserver(self.luadriver) self.hall_page = Hall_Page() self.task_page = Task_Page() self.game_page = Game_Page() self.personinfo_page = Personinfo_Page() def run_test(self): self.start_step("等待页面加载完成") self.hall_page.wait_element("同步标志") self.hall_page.wait_element("任务").click() time.sleep(2) self.task_page.wait_element("每日任务tag").click() time.sleep(2) self.common.swipeelement(self.task_page.wait_element("玩游戏任务列表2"), self.task_page.wait_element("玩游戏任务列表1")) time.sleep(2) self.task_page.wait_element("玩游戏任务1").click() time.sleep(2) try: self.game_page.wait_element("资源下载-确定").click() time.sleep(15) except: print("游戏已下载") self.hall_page.screenshot('game1.png') def post_test(self): self.common.recover_user(mid) # self.common.deletefile(self.luadriver) self.common.closedriver()
class C30976_DFCP_Task_Interface_TaskEnterGame1(TestCase): ''' 银币不足但未破产做牌局任务 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 5 def pre_test(self): self.common = Common() global mid mid = self.common.get_config_value("casecfg", "mid") self.common.set_coin(mid, "3000") self.luadriver = self.common.setupdriver() self.hall_page = Hall_Page() self.task_page = Task_Page() self.game_page = Game_Page() self.personinfo_page = Personinfo_Page() # 每个用例都需要关闭活动,把这个放在初始化里面实现 self.common.closeactivity(self.luadriver) def run_test(self): self.start_step("等待页面加载完成") self.hall_page.wait_element("同步标志") self.hall_page.wait_element("任务").click() time.sleep(2) self.task_page.wait_element("每日任务tag").click() time.sleep(2) self.common.swipeelement(self.task_page.wait_element("玩游戏任务列表2"), self.task_page.wait_element("玩游戏任务列表1")) time.sleep(2) self.task_page.wait_element("玩游戏任务1").click() time.sleep(2) try: self.game_page.wait_element("资源下载-确定").click() time.sleep(15) except: print("游戏已下载") self.hall_page.screenshot('game1.png') def post_test(self): self.common.recover_user(mid) # self.common.release_user(user_info['mid']) # self.common.deletefile(self.luadriver) self.common.closedriver()
class C31034_DFCP_Backpack_GetPro(TestCase): ''' 购买道具,商城购买道具,查看物品箱 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 5 def pre_test(self): self.common = Common() self.hall_page = Hall_Page() self.mall_page = Mall_Page() self.sign_page = Sign_Page() self.backpack_page = Backpack_Page() self.personinfo_page = Personinfo_Page() global mid mid = self.common.get_config_value("casecfg","mid") self.common.set_coin(mid,value=50000) 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.hall_page.screenshot('Backpack_Enterpack1.png') self.luadriver.keyevent(4) self.start_step("进入商城页面") self.hall_page.wait_element("商城").click() self.mall_page.wait_element("道具页签").click() self.start_step("购买道具") self.mall_page.wait_element("提示卡").click() self.sign_page.wait_element("购买").click() self.mall_page.wait_element("返回").click() self.start_step("进入物品箱页面") self.hall_page.wait_element("物品箱").click() self.hall_page.screenshot('buy.png') def post_test(self): # self.common.release_user(user_info['mid']) # self.common.deletefile(self.luadriver) self.common.recover_user(mid=mid) self.common.closedriver()
class C31060_DFCP_Mall_Interface_GetPro(TestCase): ''' 商城购买道具 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 5 def pre_test(self): self.common = Common() self.hall_page = Hall_Page() self.mall_page = Mall_Page() self.sign_page = Sign_Page() self.backpack_page = Backpack_Page() self.personinfo_page = Personinfo_Page() global mid mid = self.common.get_config_value("casecfg", "mid") self.common.set_coin(mid=mid, value='53000') # global user_info # user_info = self.common.get_user() # print user_info self.luadriver = self.common.setupdriver() # 每个用例都需要关闭活动,把这个放在初始化里面实现 self.common.closeactivity(self.luadriver) def run_test(self): self.start_step("等待页面加载完成") self.start_step("进入商城页面") self.hall_page.wait_element("商城").click() self.mall_page.wait_element("道具页签").click() self.start_step("购买道具") self.mall_page.wait_element("提示卡").click() time.sleep(5) self.sign_page.wait_element("购买").click() time.sleep(2) self.hall_page.screenshot('bug.png') def post_test(self): # self.common.release_user(user_info['mid']) # self.common.deletefile(self.luadriver) self.common.closedriver() self.common.recover_user(mid)
class C31064_DFQP_Exchange_gold1(TestCase): ''' 金条兑换 银币大于20w,金条兑换入口显示 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 10 def pre_test(self): self.common = Common() self.hall_page = Hall_Page() self.exchange_page = Exchange_Page() self.personinfo_page = Personinfo_Page() global mid mid = self.common.get_config_value("casecfg", "mid") self.start_step("设置银币大于20w") self.common.set_coin(mid=mid, value='200001') self.start_step("初始化Luadriver") self.luadriver = self.common.setupdriver() self.start_step("关闭活动") self.common.closeactivity(self.luadriver) def run_test(self): self.start_step("等待页面加载完成") self.hall_page.wait_element("同步标志") self.start_step("进入金条兑换界面") self.exchange_page.wait_element("换金条").click() self.exchange_page.wait_element("确定兑换") self.exchange_page.screenshot("Exchange_gold1.png") def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' try: self.common.recover_user() self.common.closedriver() except: self.log_info("close driver fail")
class C27385_quicklyStartGame_coinsEnough(TestCase): ''' 玩家自身携带条件不足够进入全部玩法场次时,快速开始入场 ''' owner = "GuixiangGui" status = EnumStatus.Design priority = EnumPriority.High timeout = 30 def pre_test(self): self.hall_page = Hall_Page() self.game_page = Game_Page() self.yuepai_page = Yuepai_Page() self.common = Common() self.start_step("初始化driver") self.driver = self.common.setupdriver() self.start_step("关闭弹出框") self.common.closeactivity(self.driver) def run_test(self): def test_game(gameElement, needClickRight, isTiro = True): gameId = gameElement.get_attribute("name") self.start_step("进入子游戏%s " %gameId) levelConfig = PHPInterface.get_levelconfig(re.search('\d+', gameId).group(), 0, 0, 12) tiro_high_limit = int(levelConfig.get("values").get("HIGH_LIMIT")) screenName = gameId if tiro_high_limit < 0 and not isTiro: return if isTiro: if tiro_high_limit < 0: tiro_high_limit = int(levelConfig.get("values").get("LOW_LIMIT"))+500 self.common.set_coin(self.mid, tiro_high_limit-100) screenName = screenName+'Tiro.png' else: self.common.set_coin(self.mid, tiro_high_limit+100) screenName = screenName+'Midrange.png' self.common.switchserver() self.common.closeActivityBtn() if needClickRight and self.hall_page.element_is_exist("右三角"): self.hall_page.wait_element("右三角").click() self.start_step("开始快速开场测试") gameElement.click() self.game_page.wait_element("快速开始").click() if self.game_page.element_is_exist("菜单键", 10): self.game_page.screenshot(screenName) else: self.game_page.screenshot(gameId+"_intoRoom_fail.png") self.yuepai_page.is_exist_yuepairoom() # while True: # if self.hall_page.element_is_exist("预发布"): # break # self.driver.back() def traverseGameList(gameList, needClickRight=False): for gameElement in gameList: if needClickRight and self.hall_page.element_is_exist("右三角"): self.hall_page.wait_element("右三角").click() gameElement.click() if self.hall_page.element_is_exist("重新获取", 3): self.game_page.screenshot(gameElement.get_attribute("name")+"_open_failed.png") self.hall_page.wait_element("关闭对话框").click() continue self.game_page.game_is_download() if self.game_page.element_not_exist("广播"): self.game_page.click_game_play() roomLevel = self.game_page.get_elements("房间场次") if len(roomLevel)>1: try: test_game(gameElement, needClickRight, True) test_game(gameElement, needClickRight, False) except: self.game_page.screenshot(gameElement.get_attribute("name")+"_failed.png") try: self.start_step("退出房间") self.yuepai_page.is_exist_yuepairoom() self.game_page.wait_element("返回1").click() except: self.log_info("退出房间失败") self.start_step("等待页面加载完成") self.hall_page.wait_element("同步标志") self.mid = self.common.get_config_value("casecfg", "mid") self.start_step("遍历首页游戏列表") traverseGameList(self.game_page.get_game_list()) try: self.hall_page.wait_element("右三角").click() traverseGameList(self.game_page.get_game_list(), True) except: print "没有右三角按钮" def post_test(self): self.common.closedriver() self.common.recover_user(self.mid)
class C27386_quicklyStartGame_coinsBankruptcy(TestCase): ''' 玩家自身携带条件不足够进入全部玩法场次时,快速开始入场 ''' owner = "GuixiangGui" status = EnumStatus.Design priority = EnumPriority.High timeout = 30 def pre_test(self): self.hall_page = Hall_Page() self.game_page = Game_Page() self.yuepai_page = Yuepai_Page() self.common = Common() self.start_step("初始化driver") self.driver = self.common.setupdriver() self.start_step("关闭弹出框") self.common.closeactivity(self.driver) def run_test(self): global mid mid = self.common.get_config_value("casecfg", "mid") print mid def test_game(gameElement, needClickRight, isSafeBox = False): gameId = gameElement.get_attribute("name") self.start_step("进入子游戏%s " % gameId) levelConfig = PHPInterface.get_levelconfig(re.search('\d+', gameId).group(), 0, 0, 12) bankrupt_limit = int(levelConfig.get("values").get("BANKRUPT_LIMIT")) print bankrupt_limit global screenName screenName = gameId if isSafeBox: self.common.set_safeBoxMoney(mid, bankrupt_limit+100, 0) self.common.set_coin(mid, bankrupt_limit-100) screenName = screenName+'_safeBox_have_money.png' else: self.common.set_safeBoxMoney(mid, 0, 0) self.common.set_coin(mid, bankrupt_limit-100) screenName = screenName+'_safeBox_no_money.png' self.common.switchserver() self.common.closeActivityBtn() if needClickRight and self.hall_page.element_is_exist("右三角"): self.hall_page.wait_element("右三角").click() gameElement.click() if self.hall_page.element_is_exist("重新获取", 3): self.game_page.screenshot(gameElement.get_attribute("name")+"_open_failed.png") self.hall_page.wait_element("关闭对话框").click() return self.game_page.game_is_download() if self.game_page.element_not_exist("广播"): self.game_page.click_game_play() # if needClickRight and self.hall_page.element_is_exist("右三角"): # self.hall_page.wait_element("右三角").click() self.start_step("开始快速开场测试"+gameId) # gameElement.click() # self.game_page.wait_element("快速开始").click() time.sleep(2) self.game_page.screenshot(screenName) while self.hall_page.element_is_exist("关闭对话框", 3): self.hall_page.wait_element("关闭对话框").click() # while True: # self.driver.back() # if(self.hall_page.element_is_exist("预发布")): # break def traverseGameList(gameList, needClickRight=False): for gameElement in gameList: test_game(gameElement, needClickRight, False) test_game(gameElement, needClickRight, True) # try: # test_game(gameElement, needClickRight, False) # test_game(gameElement, needClickRight, True) # except: # self.game_page.screenshot(gameElement.get_attribute("name")+"_failed.png") # self.start_step("开始快速开场测试") # # gameElement.click() # self.game_page.wait_element("快速开始").click() # self.game_page.screenshot(screenName) while True: if(self.hall_page.element_is_exist("客服")): break self.driver.back() self.start_step("等待页面加载完成") self.hall_page.wait_element("同步标志") self.start_step("遍历首页游戏列表") traverseGameList(self.game_page.get_game_list()) try: self.hall_page.wait_element("右三角").click() traverseGameList(self.game_page.get_game_list(), True) except: print "没有右三角按钮" def post_test(self): self.common.recover_user(mid) self.common.closedriver()
class C70531_Use_Safebox(TestCase): ''' 携带银币少于破产线,但保险箱有钱情况下入场 ''' owner = "ShelleyZhang" status = EnumStatus.Design priority = EnumPriority.High timeout = 60 def pre_test(self): self.common = Common() self.hall_page = Hall_Page() self.yuepai_page = Yuepai_Page() self.game_page = Game_Page() global mid mid = self.common.get_config_value("casecfg", "mid") # 初始化Luadriver self.start_step("初始化driver") self.luadriver = self.common.setupdriver() # 每个用例都需要关闭活动,把这个放在初始化里面实现 self.common.closeactivity(self.luadriver) # def first_body(self,money): # #设置自身携带银币数 # self.start_step("获取mid") # self.common.set_coin(mid=mid,value=money) # self.common.switchserver() # self.common.closeActivityBtn() # # def safebox_money(self): # self.start_step("存钱到保险箱") # self.hall_page.wait_element("保险箱").click() # self.hall_page.wait_element("存钱").click() # self.common.swipeelement(self.hall_page.wait_element("滚动条"), self.hall_page.wait_element("添加")) # self.hall_page.wait_element("确定按钮").click() # if self.hall_page.element_is_exist("存钱") ==True: # self.hall_page.wait_element("空白页").click() def action(self,isChange=False): game_list = self.game_page.get_game_list() for i in range(len(game_list)): # 得到大厅所有的游戏控件 # self.first_body("35000") self.common.set_coin(mid=mid, value="1000") self.common.set_safeBoxMoney(mid,34000,money_type=0) self.common.switchserver() self.common.closeActivityBtn() # # 首先设置初始自身携带的银币数 # self.safebox_money() # # 将自身携带的银币数存入保险箱 # self.first_body("1000") # 再次设置自身携带的银币数 # if isChange and self.hall_page.element_is_exist("换页"): # self.hall_page.wait_element("换页").click() try: game_list[i].click() self.game_page.game_is_download() ele = self.hall_page.get_elements("场次名称") ele[0].click() #点击初级场 self.hall_page.screenshot("%s_1.png" % game_list[i].get_attribute("name")) self.hall_page.wait_element("关闭按钮").click() #判断点击关闭按钮是否可以正常返回 ele[0].click() # 点击初级场 self.hall_page.wait_element("打开保险箱").click() self.hall_page.wait_element("取出").click() self.common.swipeelement(self.hall_page.wait_element("滚动条"), self.hall_page.wait_element("添加")) self.hall_page.wait_element("确定按钮").click() self.hall_page.wait_element("頭像").click() ele[0].click() # 点击初级场 self.hall_page.screenshot("%s_2.png" % game_list[i].get_attribute("name")) try: self.start_step("退出房间") self.yuepai_page.is_exist_yuepairoom() self.game_page.wait_element("返回1").click() if isChange == True: self.log_info("is_next为True则表示遍历的是第二页的子游戏") try: self.game_page.wait_element("右三角标").click() except: self.log_info("当前为第二页") except: self.log_info("未找到元素") except: try: self.hall_page.wait_element("重新获取").click() self.hall_page.screenshot("%s_1.png" % game_list[i].get_attribute("name")) except: print "截图失败" def run_test(self): ''' 测试用例 ''' self.start_step("等待页面加载完成") # self.start_step("存钱到保险箱") self.action() self.hall_page.wait_element("换页").click() self.action(True) def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' self.common.recover_user(mid) self.start_step("从保险箱取出银币") self.common.set_safeBoxMoney(mid, 0, 0) self.common.closedriver()
class C70531_Save_Money(TestCase): ''' 银币高出房间限制界面存钱入场 ''' owner = "ShelleyZhang" status = EnumStatus.Design priority = EnumPriority.High timeout = 20 def pre_test(self): self.common = Common() self.hall_page = Hall_Page() self.yuepai_page = Yuepai_Page() self.game_page = Game_Page() self.start_step("获取mid") global mid mid = self.common.get_config_value("casecfg", "mid") self.start_step("携带1000000银币") self.common.set_coin(mid=mid,value='100000000') # 初始化Luadriver self.start_step("初始化driver") self.luadriver = self.common.setupdriver() # 每个用例都需要关闭活动,把这个放在初始化里面实现 self.common.closeactivity(self.luadriver) def action(self, isChange=False): game_list = self.game_page.get_game_list() for i in range(len(game_list)): # 得到大厅所有的游戏控件 if isChange and self.hall_page.element_is_exist("换页"): self.hall_page.wait_element("换页").click() try: game_list[i].click() self.game_page.game_is_download() ele = self.hall_page.get_elements("场次名称") ele[0].click() # 点击初级场 try: self.hall_page.wait_element("存钱入场").click() except: self.log_info("未出现存钱入场的按钮") time.sleep(3) self.hall_page.screenshot("%s_1.png" % game_list[i].get_attribute("name")) try: self.yuepai_page.is_exist_yuepairoom() self.hall_page.wait_element("关闭对话框").click() except: print "退出房间失败" if self.hall_page.wait_element("返回1") != None: self.hall_page.wait_element("返回1").click() except: try: self.hall_page.wait_element("重新获取").click() self.hall_page.screenshot("%s_downloadfail.png" % game_list[i].get_attribute("name")) except: self.log_info("重新获取元素並未存在") def run_test(self): ''' 测试用例 ''' self.start_step("等待页面加载完成") self.start_step("获取子游戏列表") self.action() self.hall_page.wait_element("换页").click() self.action(True) def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' self.common.recover_user(mid) self.start_step("从保险箱取出银币") self.common.set_safeBoxMoney(mid, 0, 0) self.common.closedriver()
class C27362_Safebox_Havemony(TestCase): ''' 携带银币3000以下,保险箱存有银币时点击游戏位 ''' owner = "ShelleyZhang" status = EnumStatus.Design priority = EnumPriority.High timeout = 20 def pre_test(self): self.common = Common() self.hall_page = Hall_Page() self.yuepai_page = Yuepai_Page() self.game_page = Game_Page() self.start_step("获取mid") global mid mid = self.common.get_config_value("casecfg", "mid") self.common.set_safeBoxMoney(mid, 3000, money_type=0) self.common.set_coin(mid=mid,value='2998') # 初始化Luadriver self.start_step("初始化driver") self.luadriver = self.common.setupdriver() # 每个用例都需要关闭活动,把这个放在初始化里面实现 self.common.closeactivity(self.luadriver) # def set_safeboxmoney(self): # #设置保险箱的银币数 # self.hall_page.wait_element("保险箱").click() # time.sleep(4) # self.hall_page.wait_element("存钱").click() # time.sleep(4) # self.common.swipeelement(self.hall_page.wait_element("滚动条"), self.hall_page.wait_element("添加")) # self.hall_page.wait_element("确定按钮").click() # time.sleep(3) # self.hall_page.wait_element("空白页").click() # time.sleep(3) # # def set_bodymoney(self): # #设置自身携带的银币数 # self.start_step("获取mid") # global mid # mid = self.common.get_config_value("casecfg", "mid") # self.start_step("携带3000银币") # self.common.set_coin(mid=mid, value='250') # time.sleep(3) # self.common.switchserver() # # 每个用例都需要关闭活动,把这个放在初始化里面实现 # self.common.closeactivity(self.luadriver) def bian_li(self,isChange=False): game_list = self.game_page.get_game_list() for i in range(len(game_list)): if isChange and self.hall_page.element_is_exist("换页"): self.hall_page.wait_element("换页").click() game_list[i].click() time.sleep(2) self.game_page.game_is_download() time.sleep(2) self.hall_page.screenshot("%s.png" % game_list[i].get_attribute("name")) try: if self.hall_page.wait_element("返回1") != None: self.hall_page.wait_element("返回1").click() except: try: self.hall_page.wait_element("重新获取").click() self.hall_page.screenshot("%s_downloadfail.png" % game_list[i].get_attribute("name")) except: self.log_info("重新获取元素並未存在") def run_test(self): ''' 测试用例 ''' self.start_step("等待页面加载完成") # self.start_step("存钱到保险箱") # self.set_safeboxmoney() # self.set_bodymoney() self.start_step("获取子游戏列表") self.bian_li() self.hall_page.wait_element("换页").click() self.bian_li(True) def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' self.common.recover_user(mid) self.start_step("从保险箱取出银币") self.common.set_safeBoxMoney(mid, 0, 0) self.common.closedriver()
class C70531_Notbroke_Havesafebox(TestCase): ''' 携带银币大于破产线但不够入场,保险箱有钱情况下入场 ''' owner = "ShelleyZhang" status = EnumStatus.Design priority = EnumPriority.High timeout = 20 def pre_test(self): self.common = Common() self.hall_page = Hall_Page() self.yuepai_page = Yuepai_Page() self.game_page = Game_Page() self.start_step("获取mid") global mid mid = self.common.get_config_value("casecfg", "mid") self.common.set_safeBoxMoney(mid, 10000000, money_type=0) self.start_step("初始化driver") self.luadriver = self.common.setupdriver() # 每个用例都需要关闭活动,把这个放在初始化里面实现 self.common.closeactivity(self.luadriver) def bian_li(self,isChange=False): game_list = self.game_page.get_game_list() for i in range(len(game_list)): gameid_name = game_list[i].get_attribute("name") self.start_step("获取游戏ID: %s 初级场下限是" % gameid_name) gameid = int(gameid_name[4:len(gameid_name)]) gamecfg = PHPInterface.get_levelconfig(gameid, 0, 0, 12) low_limit = gamecfg.get('values', {'LOW_LIMIT': None}).get('LOW_LIMIT') self.log_info("游戏ID: %s 初级场下限是%d" % (gameid_name, low_limit)) self.common.set_coin(mid=mid, value= low_limit - 10) self.common.switchserver() self.common.closeActivityBtn() try: if isChange and self.hall_page.element_is_exist("换页"): self.hall_page.wait_element("换页").click() # 判断是否需要换页 game_list[i].click() time.sleep(2) self.game_page.game_is_download() time.sleep(2) ele = self.hall_page.get_elements("场次名称") time.sleep(2) ele[1].click() #点击中级场 try: while (self.hall_page.element_is_exist("预发布") != True): self.luadriver.back() time.sleep(10) print "等待牌局打完" except: print "退出牌局失败" # 保险箱有钱,身上携带现金不够,点击中级场 time.sleep(2) # 获取到进入该房间还需要xxx银币界面 self.hall_page.screenshot("%s_1.png" % game_list[i].get_attribute("name")) time.sleep(2) if self.hall_page.element_is_exist("关闭对话框"): self.hall_page.wait_element("关闭对话框").click() # 点击关闭按钮 time.sleep(2) elif self.hall_page.wait_element("返回1") != None: self.hall_page.wait_element("返回1").click() except: try: self.hall_page.wait_element("重新获取").click() self.hall_page.screenshot("%s_downloadfail.png" % game_list[i].get_attribute("name")) except: self.log_info("重新获取元素並未存在") def run_test(self): ''' 测试用例 ''' self.start_step("等待页面加载完成") #设置身上携带的银币数 self.bian_li() self.hall_page.wait_element("换页").click() self.bian_li(True) def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' self.common.recover_user(mid) self.start_step("从保险箱取出银币") self.common.set_safeBoxMoney(mid, 0, 0) self.common.closedriver()
class C31263_DFQP_Match_CreateInvitational(TestCase): ''' 大厅比赛场---创建邀请赛 ''' owner = "MindyZhang" status = EnumStatus.Design priority = EnumPriority.High timeout = 10 def pre_test(self): global coin, totalmoney, safebox_crystal self.common = Common() global mid mid = self.common.get_config_value("casecfg", "mid") self.common.set_coin(mid=mid, value='20000') self.common.set_crystal(mid=mid, value='450') self.hall_page = Hall_Page() self.match_page = Match_Page() self.personinfo_page = Personinfo_Page() self.luadriver = self.common.setupdriver() # PHPInterface.set_env(env=PHPInterface.PRE_REPUBLISH_ENV) self.common.closeactivity(self.luadriver) #关闭活动弹框 def run_test(self): ''' 测试用例 ''' self.start_step("等待页面加载完成") self.hall_page.wait_element("同步标志") time.sleep(5) self.start_step("点击比赛场按钮") self.hall_page.wait_element("比赛场").click() time.sleep(10) self.start_step("点击邀请赛") self.match_page.wait_element("比赛场-邀请赛").click() time.sleep(10) self.start_step("创建邀请赛") self.match_page.wait_element("创建邀请赛").click() time.sleep(3) self.match_page.wait_element("完成创建").click() time.sleep(3) self.match_page.screenshot("3.png") time.sleep(3) # 现金不足 if (coin < 53000): # 现金不足,存款足够 if (totalmoney >= 53000): self.match_page.wait_element("notNow").click() time.sleep(3) self.match_page.screenshot("4.png") time.sleep(3) self.match_page.wait_element("确定").click() time.sleep(3) self.match_page.screenshot("5.png") time.sleep(3) self.match_page.wait_element("关闭").click() time.sleep(3) self.match_page.wait_element("箭头返回").click() #现金不足,存款不足 elif (totalmoney < 53000): self.match_page.wait_element("现在充值").click() time.sleep(3) self.match_page.screenshot("5.png") time.sleep(3) self.match_page.wait_element("关闭").click() time.sleep(3) self.match_page.wait_element("箭头返回").click() #现金足够 else: self.match_page.wait_element("确定").click() time.sleep(3) self.match_page.screenshot("5.png") time.sleep(3) self.match_page.wait_element("关闭").click() time.sleep(3) self.match_page.wait_element("箭头返回").click() self.match_page.wait_element("箭头返回").click() time.sleep(3) self.match_page.wait_element("返回").click() time.sleep(3) self.hall_page.wait_element("同步标志") def post_test(self): ''' 测试用例执行完后,清理测试环境 ''' try: self.common.recover_user(mid) self.common.closedriver() except: self.log_info("close driver fail")
class C30963_DFQP_Sign(TestCase): ''' VIP用户打开每日签到界面领,签到领取银币 ''' owner = "YoungLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 5 def pre_test(self): self.common = Common() global mid mid = self.common.get_config_value("casecfg", "mid") PHPInterface.set_vip(mid, 4) # 设置用户为vip # 初始化Luadriver self.luadriver = self.common.setupdriver() self.hall_page = Hall_Page() self.sign_page = Sign_Page() self.personinfo_page = Personinfo_Page() self.common.closeactivity(self.luadriver) def run_test(self): self.start_step("等待页面加载完成") self.hall_page.wait_element("同步标志") user_info1 = PHPInterface.get_user_info(mid) #获取用户信息 coin = json.loads(user_info1).get('result', {'coin': None}).get('coin') print '签到前银币:' + str(coin) # 关闭悬浮球 self.common.closefloatBall() i = 0 while i < 3: i += 1 try: self.personinfo_page.wait_element("关闭").click() except: print "已关闭窗口" self.start_step('进入任务界面') self.hall_page.wait_element('任务').click() self.start_step('进入每日签到界面') self.sign_page.wait_element('每日签到页面').click() self.start_step('进入每日签到页面开始签到') try: self.sign_page.wait_element('签到').click() except: print '已签到过' self.personinfo_page.screenshot('.png') time.sleep(5) user_info = PHPInterface.get_user_info(mid) # 获取用户信息 coin1 = json.loads(user_info1).get('result', { 'coin': None }).get('coin') print '签到后银币:' + str(coin1) if coin1 == coin + 1000: print 'vip用户签到获得1000银币' else: print 'vip用户签到没有获得1000银币' def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' # self.common.release_user(user_info['mid']) # self.common.deletefile(self.luadriver) self.common.recover_user(mid) self.common.closedriver()
class C70531_Carry_Muchmoney(TestCase): ''' 携带高级场的银币数,点击初级场入场 ''' owner = "ShelleyZhang" status = EnumStatus.Design priority = EnumPriority.High timeout = 15 def pre_test(self): self.common = Common() self.hall_page = Hall_Page() self.yuepai_page = Yuepai_Page() self.game_page = Game_Page() self.start_step("获取mid") global mid mid = self.common.get_config_value("casecfg", "mid") self.start_step("携带1000000银币") self.common.set_coin(mid=mid,value='1000000') # 初始化Luadriver self.start_step("初始化driver") self.luadriver = self.common.setupdriver() # 每个用例都需要关闭活动,把这个放在初始化里面实现 self.common.closeactivity(self.luadriver) def action(self,isChange=False): game_list = self.game_page.get_game_list() for i in range(len(game_list)): # 得到大厅所有的游戏控件 if isChange and self.hall_page.element_is_exist("换页"): self.hall_page.wait_element("换页").click() try: game_list[i].click() time.sleep(2) self.game_page.game_is_download() time.sleep(4) ele = self.hall_page.get_elements("场次名称") ele[0].click() #点击初级场(存在直接进入房间的情况) try: while(self.hall_page.element_is_exist("预发布") != True): self.luadriver.back() time.sleep(10) print "等待牌局打完" except: print "退出牌局失败" time.sleep(2) self.hall_page.screenshot("%s_1.png" % game_list[i].get_attribute("name")) time.sleep(2) if self.hall_page.element_is_exist("关闭对话框"): self.hall_page.wait_element("关闭对话框").click() self.hall_page.screenshot("%s_2.png" % game_list[i].get_attribute("name")) time.sleep(2) self.hall_page.wait_element("返回1").click() # self.hall_page.wait_element("关闭对话框").click() # time.sleep(2) elif self.hall_page.element_is_exist("返回1"): self.hall_page.wait_element("返回1").click() except: try: self.hall_page.wait_element("重新获取").click() self.hall_page.screenshot("%s_downloadfail.png" % game_list[i].get_attribute("name")) except: self.log_info("重新获取元素並未存在") def run_test(self): ''' 测试用例 ''' self.start_step("等待页面加载完成") self.start_step("获取子游戏列表") self.action() self.hall_page.wait_element("换页").click() self.action(True) def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' self.common.recover_user(mid) self.common.closedriver()
class C27363_Go_Broke(TestCase): ''' 携带银币不足最小房间下限时点击房间入场 ''' owner = "ShelleyZhang" status = EnumStatus.Design priority = EnumPriority.High timeout = 30 def pre_test(self): try: self.common = Common() self.hall_page = Hall_Page() self.yuepai_page = Yuepai_Page() self.game_page = Game_Page() self.start_step("获取mid") global mid mid = self.common.get_config_value("casecfg", "mid") # self.start_step("携带10银币") # self.common.set_coin(mid=mid,value='10') # 初始化Luadriver self.start_step("初始化driver") self.luadriver = self.common.setupdriver() # 每个用例都需要关闭活动,把这个放在初始化里面实现 self.common.closeactivity(self.luadriver) except: self.hall_page.get_element("重连游戏").click() def bian_li(self,isChange=False): game_list = self.game_page.get_game_list() for i in range(len(game_list)): #得到大厅所有的游戏控件 name = game_list[i].get_attribute("name") gameid = int(name[4:len(name)]) gamecfg = PHPInterface.get_levelconfig(gameid, 0, 0, 12) # 获取场次配置信息 low_limit = gamecfg.get("values", {"LOW_LIMIT": None}).get("LOW_LIMIT") # 初级场下限是%d self.common.set_coin(mid, low_limit -10) # 选取合适的银币数,少于入场下限 self.common.switchserver() self.common.closeactivity(self.luadriver) if isChange and self.hall_page.element_is_exist("换页"): self.hall_page.wait_element("换页").click() game_list[i].click() time.sleep(4) try: self.game_page.game_is_download() #下载游戏 time.sleep(2) self.hall_page.screenshot("%s_1.png" % game_list[i].get_attribute("name")) self.hall_page.wait_element("快速开始").click() self.hall_page.screenshot("%s_2.png" % game_list[i].get_attribute("name")) self.hall_page.wait_element("关闭对话框").click() if self.hall_page.wait_element("返回1") != None: self.hall_page.wait_element("返回1").click() except: try: self.hall_page.wait_element("重新获取").click() self.hall_page.screenshot("%s_downloadfail.png" % game_list[i].get_attribute("name")) except: self.log_info("重新获取元素並未存在") def run_test(self): ''' 测试用例 ''' self.start_step("等待页面加载完成") self.start_step("获取子游戏列表") self.bian_li() self.hall_page.wait_element("换页").click() self.bian_li(True) def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' self.common.recover_user(mid) self.common.closedriver()
class C31036_DFQP_Backpack_Sendpro(TestCase): ''' 私信发送道具,鲜花 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 10 def pre_test(self): self.start_step("初始化环境") self.common = Common() global user_info user_info = self.common.get_user() print user_info self.message_page = Message_Page() self.hall_page = Hall_Page() self.personinfo_page = Personinfo_Page() self.backpack_page = Backpack_Page() self.start_step("接口交互道具私信") global mid mid = self.common.get_config_value("casecfg","mid") return1 = PHPInterface.send_message(mid, "接口交互道具私信","接口交互道具私信",200,1,0) self.start_step("初始化driver") self.luadriver = self.common.setupdriver() self.start_step("关闭活动页面") 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.hall_page.screenshot('Backpack_Enterpack2.png') self.luadriver.keyevent(4) self.start_step("进入消息页面") self.hall_page.wait_element("消息").click() self.start_step("查看消息") try: try: element = self.message_page.get_elements("小琪妹") element[1].click() except: self.message_page.wait_element("小琪妹").click() self.message_page.screenshot('getcalls1.png') self.message_page.wait_element("立即领取").click() self.message_page.screenshot('getcalls2.png') self.message_page.wait_element("知道了").click() self.message_page.wait_element('已领取').get_attribute('text') == "已领取" except: print ("没有消息") self.hall_page.wait_element("头像").click() self.hall_page.wait_element("头像").click() self.hall_page.wait_element("同步标志") self.start_step("进入物品箱页面") self.hall_page.wait_element("物品箱").click() self.hall_page.screenshot('Backpack_Enterpack2.png') def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' try: self.common.recover_user(mid=mid) self.common.closedriver() except: self.log_info("close driver fail")
class C31068_DFQP_Exchange_Gold_Exchange2(TestCase): ''' 成功兑换金条 总银币大于20w,携带银币大于103000 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 8 def pre_test(self): self.common = Common() global mid mid = self.common.get_config_value("casecfg", "mid") self.start_step("设置银币大于20w") self.common.set_coin(mid=mid, value='200001') self.hall_page = Hall_Page() self.exchange_page = Exchange_Page() self.safebox_page = Safebox_Page() self.personinfo_page = Personinfo_Page() self.start_step("初始化Luadriver") self.luadriver = self.common.setupdriver() self.start_step("关闭活动,并切换到预发布") 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.safebox_page.wait_element("银币").click() self.safebox_page.wait_element("存入").click() self.start_step("将银币存入保险箱") element1 = self.safebox_page.wait_element("滚动条") element2 = self.safebox_page.wait_element("增加金条/银条数目") swipe_startx = element1.location['x'] swipe_starty = element1.location['y'] swipe_endx = element2.location['x'] swipe_endy = element2.location['y'] print swipe_startx, swipe_starty, swipe_endx, swipe_endy, swipe_endx self.luadriver.swipe(swipe_startx, swipe_starty, swipe_startx + (swipe_endx - swipe_startx) / 2, swipe_endy, 1000) self.safebox_page.wait_element('确定---保险箱').click() time.sleep(5) self.luadriver.keyevent(4) self.start_step("进入金条兑换界面") dict = PHPInterface.get_user_info(user_info.get('mid')) # 获取玩家信息 crystal = eval(dict).get('result', { 'crystal': None }).get('crystal') # 获取当前金币 self.exchange_page.wait_element("换金条").click() self.exchange_page.wait_element("确定兑换").click() time.sleep(2) self.exchange_page.screenshot("Gold_Exchange1.png") dict1 = PHPInterface.get_user_info(user_info.get('mid')) # 获取玩家信息 crystal1 = eval(dict1).get('result', { 'crystal': None }).get('crystal') # 获取当前金币 self.assert_equal(True, crystal + 200, crystal1) def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' try: self.common.recover_user() self.common.closedriver() except: self.log_info("close driver fail")
class C27360_Carry_Zeromony(TestCase): ''' 携带0银币点击游戏位 ''' owner = "ShelleyZhang" status = EnumStatus.Design priority = EnumPriority.High timeout = 15 def pre_test(self): self.common = Common() self.hall_page = Hall_Page() self.yuepai_page = Yuepai_Page() self.game_page = Game_Page() self.start_step("获取mid") global mid mid = self.common.get_config_value("casecfg", "mid") self.start_step("携带0银币") self.common.set_coin(mid=mid,value='0') # 初始化Luadriver self.start_step("初始化driver") self.luadriver = self.common.setupdriver() # 每个用例都需要关闭活动,把这个放在初始化里面实现 self.common.closeactivity(self.luadriver) def bian_li(self,isChange=False): game_list = self.game_page.get_game_list() for i in range(len(game_list)): if isChange and self.hall_page.element_is_exist("换页"): self.hall_page.wait_element("换页").click() try: game_list[i].click() self.game_page.game_is_download() ele = self.hall_page.get_elements("场次名称") time.sleep(2) if len(ele) == 3: ele[2].click() time.sleep(3) self.hall_page.screenshot("%s.png" % game_list[i].get_attribute("name")) elif len(ele) == 4: ele[3].click() time.sleep(3) self.hall_page.screenshot("%s.png" % game_list[i].get_attribute("name")) else: ele[1].click() time.sleep(3) self.hall_page.screenshot("%s.png" % game_list[i].get_attribute("name")) #点击高倍场 time.sleep(4) self.hall_page.wait_element("关闭对话框").click() if self.hall_page.wait_element("返回1") != None: self.hall_page.wait_element("返回1").click() except: try: self.hall_page.wait_element("重新获取").click() self.hall_page.screenshot("%s_downloadfail.png" % game_list[i].get_attribute("name")) except: self.log_info("重新获取元素並未存在") def run_test(self): ''' 测试用例 ''' self.start_step("等待页面加载完成") self.start_step("获取子游戏列表") self.bian_li() self.hall_page.wait_element("换页").click() self.bian_li(True) def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' self.common.recover_user(mid) self.common.closedriver()
class C31048_DFQP_Safebox4(TestCase): ''' 保险箱金币不为0时取款 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 10 def pre_test(self): self.common = Common() global mid mid = self.common.get_config_value("casecfg", "mid") self.common.set_crystal(mid=mid, value='400') # 初始化Luadriver self.luadriver = self.common.setupdriver() self.hall_page = Hall_Page() self.sign_page = Sign_Page() self.personinfo_page = Personinfo_Page() self.safebox_page = Safebox_Page() self.start_step("关闭活动,并切换到预发布") self.common.closeactivity(self.luadriver) def run_test(self): self.start_step("等待页面加载完成") self.hall_page.wait_element("同步标志") self.hall_page.wait_element('保险箱').click() time.sleep(3) self.safebox_page.wait_element('金条保险箱').click() time.sleep(3) self.safebox_page.wait_element("存入").click() time.sleep(3) self.start_step("将金条存入保险箱") self.common.swipeelement(self.safebox_page.wait_element("滚动条"), self.safebox_page.wait_element("增加金条/银条数目")) time.sleep(3) self.safebox_page.wait_element('确定---保险箱').click() time.sleep(3) self.safebox_page.screenshot('1.png') self.start_step("将金条取出保险箱") self.safebox_page.wait_element('取出').click() time.sleep(3) self.common.swipeelement(self.safebox_page.wait_element("滚动条"), self.safebox_page.wait_element("增加金条/银条数目")) time.sleep(3) self.safebox_page.screenshot('2.png') self.safebox_page.wait_element('确定---保险箱').click() time.sleep(3) self.safebox_page.screenshot('3.png') def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' # self.common.release_user(UserID) # self.common.deletefile(self.luadriver) # self.common.closedriver() try: self.common.deletefile(self.luadriver) self.common.closedriver() self.common.recover_user(mid) except: self.log_info("close driver fail")
class C30965_DFQP_Sign(TestCase): ''' 无补签卡,点击补签按钮购买补签卡 ''' owner = "YoungLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 10 def pre_test(self): self.common = Common() global mid mid = self.common.get_config_value("casecfg", "mid") self.common.set_coin(mid=mid, value='60000') self.hall_page = Hall_Page() self.sign_page = Sign_Page() self.personinfo_page = Personinfo_Page() self.luadriver = self.common.setupdriver() self.start_step("关闭活动,并切换到预发布") self.common.closeactivity(self.luadriver) def run_test(self): self.start_step("等待页面加载完成") self.hall_page.wait_element("同步标志") self.common.closefloatBall() self.start_step('进入任务界面') self.hall_page.wait_element('任务').click() self.start_step('进入每日签到界面') self.sign_page.wait_element('每日签到页面').click() try: self.sign_page.wait_element('补签').click() except: print '已签到过' List = self.sign_page.wait_element('补签卡数量').get_attribute('text') print List buSignupNum = re.findall(r'\d+', List) AddNum = int(buSignupNum[0]) if int(buSignupNum[0]) > 0: PHPInterface.set_sign_card(mid, -1, AddNum) #如果事先有补签卡,则先删除所有补签卡 self.common.closeactivity_switchserver(self.luadriver) self.start_step('进入任务界面') self.hall_page.wait_element('任务').click() time.sleep(4) self.start_step('进入每日签到界面') self.sign_page.wait_element('每日签到页面').click() try: self.sign_page.wait_element('补签').click() except: print '已签到过' self.start_step('点击获取按钮') self.sign_page.wait_element('获取').click() time.sleep(4) self.start_step('点击购买') self.sign_page.wait_element('购买').click() time.sleep(4) self.personinfo_page.screenshot('.png') List = self.sign_page.wait_element('补签卡数量').get_attribute('text') print List buSignupNum = re.findall(r'\d+', List) if buSignupNum == ['1']: print '补签卡成功购买到账' else: print '补签卡未能成功购买到账' user_info = PHPInterface.get_user_info(mid) # 获取玩家信息 coin = json.loads(user_info).get('result', { 'coin': None }).get('coin') # 获取当前银币值 if coin == 10000: print '50000银币扣除' def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' # self.common.release_user(user_info['mid']) self.common.recover_user(mid) self.common.closedriver()
class C70531_Go_Higescreenings(TestCase): ''' 银币高出房间限制界面去高倍场 ''' owner = "ShelleyZhang" status = EnumStatus.Design priority = EnumPriority.High timeout = 30 def pre_test(self): self.common = Common() self.hall_page = Hall_Page() self.yuepai_page = Yuepai_Page() self.game_page = Game_Page() self.start_step("获取mid") global mid mid = self.common.get_config_value("casecfg", "mid") self.start_step("携带10000000银币") self.common.set_coin(mid=mid,value='10000000') # 初始化Luadriver self.start_step("初始化driver") self.luadriver = self.common.setupdriver() # 每个用例都需要关闭活动,把这个放在初始化里面实现 self.common.closeactivity(self.luadriver) def action(self): self.hall_page.wait_element("菜单").click() self.hall_page.wait_element("退出").click() try: while (self.hall_page.element_is_exist("预发布") != True): self.luadriver.back() time.sleep(10) # 等待牌局打完 except: print "退出牌局失败" def bian_li(self, isChange=False): game_list = self.game_page.get_game_list() for i in range(len(game_list)): try: if isChange and self.hall_page.element_is_exist("换页"): self.hall_page.wait_element("换页").click() game_list[i].click() self.game_page.game_is_download() ele = self.hall_page.get_elements("场次名称") time.sleep(2) ele[0].click() try: while(self.hall_page.element_is_exist("预发布") != True): self.luadriver.back() time.sleep(10) #等待牌局打完 except: print "退出牌局失败" try: if self.hall_page.element_is_exist("温馨提示"): self.hall_page.screenshot("%s_MuchMoney.png" % game_list[i].get_attribute("name")) self.hall_page.wait_element("关闭对话框").click() except: print "没有温馨提示框" try: if len(ele) == 3: ele[2].click() time.sleep(3) self.hall_page.screenshot("%s.png" % game_list[i].get_attribute("name")) self.action() elif len(ele) == 2: ele[1].click() time.sleep(3) self.hall_page.screenshot("%s.png" % game_list[i].get_attribute("name")) self.action() else: ele[3].click() time.sleep(3) self.hall_page.screenshot("%s.png" % game_list[i].get_attribute("name")) self.action() except: print "没有回到返回按钮界面" if self.hall_page.wait_element("返回1") != None: self.hall_page.wait_element("返回1").click() except: try: self.hall_page.wait_element("重新获取").click() self.hall_page.screenshot("%s_downloadfail.png" % game_list[i].get_attribute("name")) except: self.log_info("重新获取元素並未存在") def run_test(self): ''' 测试用例 ''' self.start_step("等待页面加载完成") self.start_step("获取子游戏列表") self.bian_li() self.hall_page.wait_element("换页").click() self.bian_li(True) def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' self.common.recover_user(mid) self.common.closedriver()
class C31264_DFQP_Match_MyMatch(TestCase): ''' 大厅比赛场---查看我创建的邀请赛 ''' owner = "MindyZhang" status = EnumStatus.Design priority = EnumPriority.High timeout = 15 def pre_test(self): self.common = Common() global mid mid = self.common.get_config_value("casecfg", "mid") self.common.set_coin(mid=mid, value='53000') self.luadriver = self.common.setupdriver() # PHPInterface.set_env(env=PHPInterface.PRE_REPUBLISH_ENV) self.common.closeactivity(self.luadriver) # 关闭活动弹框 self.hall_page = Hall_Page() self.match_page = Match_Page() self.personinfo_page = Personinfo_Page() self.start_step("获取用户ID信息") def run_test(self): ''' 测试用例 ''' self.start_step("等待页面加载完成") self.hall_page.wait_element("同步标志") time.sleep(5) self.start_step("点击比赛场按钮") self.hall_page.wait_element("比赛场").click() time.sleep(3) self.start_step("点击邀请赛") self.match_page.wait_element("比赛场-邀请赛").click() time.sleep(5) self.start_step("创建邀请赛") self.match_page.wait_element("创建邀请赛").click() time.sleep(5) self.match_page.wait_element("完成创建").click() time.sleep(3) self.match_page.screenshot("1.png") time.sleep(3) self.match_page.wait_element("确定").click() time.sleep(3) self.match_page.screenshot("2.png") time.sleep(3) self.match_page.wait_element("关闭").click() time.sleep(3) print("邀请赛创建成功") self.match_page.wait_element("箭头返回").click() time.sleep(3) self.start_step("查看我创建的邀请赛") self.match_page.wait_element("我创建的邀请赛").click() time.sleep(3) self.match_page.screenshot("3.png") time.sleep(3) self.match_page.wait_element("邀请好友/领取退还奖品").click() time.sleep(3) if (self.match_page.element_is_exist("微信邀请") == True): self.start_step("微信邀请好友") try: self.start_step("微信邀请好友") self.match_page.wait_element("微信邀请").click() time.sleep(3) self.match_page.screenshot("4.png") # time.sleep(3) # self.luadriver.keyevent(4) time.sleep(2) self.luadriver.keyevent(4) except: print "微信邀请好友失败" self.start_step("QQ邀请好友") time.sleep(2) self.start_step("QQ邀请好友") self.match_page.wait_element("QQ邀请").click() time.sleep(3) self.match_page.screenshot("5.png") time.sleep(2) self.match_page.wait_element("立即邀请").click() time.sleep(2) self.match_page.screenshot("6.png") while (self.match_page.element_is_exist("面对面扫码") == False): time.sleep(2) self.luadriver.keyevent(4) self.match_page.screenshot("61.png") time.sleep(2) self.start_step("面对面扫码") self.match_page.wait_element("面对面扫码").click() time.sleep(3) self.match_page.screenshot("7.png") time.sleep(2) self.luadriver.keyevent(4) time.sleep(2) self.luadriver.keyevent(4) time.sleep(2) else: print("领取退还奖品") self.match_page.screenshot("8.png") self.match_page.wait_element("箭头返回").click() time.sleep(3) self.match_page.wait_element("箭头返回").click() time.sleep(3) self.match_page.wait_element("返回").click() time.sleep(3) self.hall_page.wait_element("同步标志") def post_test(self): ''' 测试用例执行完后,清理测试环境 ''' self.common.recover_user(mid) self.common.closedriver()
class C70531_Money_Test(TestCase): ''' 验证关闭银币不够入场界面提示 ''' owner = "ShelleyZhang" status = EnumStatus.Design priority = EnumPriority.High timeout = 15 def pre_test(self): self.common = Common() self.hall_page = Hall_Page() self.yuepai_page = Yuepai_Page() self.game_page = Game_Page() self.start_step("获取mid") global mid mid = self.common.get_config_value("casecfg", "mid") self.start_step("携带3000银币") self.common.set_coin(mid=mid,value='3000') # 初始化Luadriver self.start_step("初始化driver") self.luadriver = self.common.setupdriver() # 每个用例都需要关闭活动,把这个放在初始化里面实现 self.common.closeactivity(self.luadriver) def action(self, isChange=False): game_list = self.game_page.get_game_list() for i in range(len(game_list)): try: if isChange and self.hall_page.element_is_exist("换页"): self.hall_page.wait_element("换页").click() #判断是否需要换页 game_list[i].click() time.sleep(2) self.game_page.game_is_download() time.sleep(2) ele = self.hall_page.get_elements("场次名称") time.sleep(2) ele[1].click() #携带三千银币,点击中级场 time.sleep(2) #获取到资金不足界面 try: while (self.hall_page.element_is_exist("预发布") != True): self.luadriver.back() time.sleep(10) # 等待牌局打完 except: print "退出牌局失败" self.hall_page.screenshot("%s_1.png" % game_list[i].get_attribute("name")) time.sleep(2) if self.hall_page.element_is_exist("关闭对话框"): self.hall_page.wait_element("关闭对话框").click() #点击关闭按钮 self.hall_page.screenshot("%s_2.png" % game_list[i].get_attribute("name")) #截屏判断是否正常返回 time.sleep(2) elif self.hall_page.wait_element("返回1") != None: self.hall_page.wait_element("返回1").click() except: try: self.hall_page.wait_element("重新获取").click() self.hall_page.screenshot("%s_downloadfail.png" % game_list[i].get_attribute("name")) except: self.log_info("重新获取元素並未存在") def run_test(self): ''' 测试用例 ''' self.start_step("等待页面加载完成") self.start_step("获取子游戏列表") self.action() self.hall_page.wait_element("换页").click() self.action(True) def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' self.common.recover_user(mid) self.common.closedriver()
class C31265_DFQP_Match_MyInvolved(TestCase): ''' 大厅比赛场---查看我报名的邀请赛 ''' owner = "MindyZhang" status = EnumStatus.Design priority = EnumPriority.High timeout = 10 def pre_test(self): self.common = Common() global mid mid = self.common.get_config_value("casecfg", "mid") self.common.set_coin(mid=mid, value='53000') # 初始化luadriver # print ("pre_test") self.luadriver = self.common.setupdriver() # PHPInterface.set_env(env=PHPInterface.PRE_REPUBLISH_ENV) self.common.closeactivity(self.luadriver) # 关闭活动弹框 time.sleep(15) self.hall_page = Hall_Page() self.match_page = Match_Page() self.personinfo_page = Personinfo_Page() self.game_page = Game_Page() def run_test(self): ''' 测试用例 ''' self.start_step("等待页面加载完成") self.hall_page.wait_element("同步标志") time.sleep(5) self.start_step("点击比赛场按钮") self.hall_page.wait_element("比赛场").click() time.sleep(5) self.start_step("点击邀请赛") self.match_page.wait_element("比赛场-邀请赛").click() time.sleep(5) self.start_step("查看我报名的邀请赛") self.match_page.wait_element("我报名的邀请赛").click() time.sleep(3) self.match_page.screenshot("1.png") if (self.match_page.element_is_exist("已报名比赛1") == True): self.match_page.wait_element("已报名比赛1").click() time.sleep(3) self.match_page.screenshot("2.png") time.sleep(3) self.match_page.wait_element("退赛").click() time.sleep(3) self.match_page.screenshot("3.png") time.sleep(2) self.luadriver.keyevent(4) time.sleep(3) else: print("没有已报名的邀请赛") self.luadriver.keyevent(4) time.sleep(3) self.start_step("创建邀请赛") self.match_page.wait_element("创建邀请赛").click() time.sleep(3) self.match_page.wait_element("完成创建").click() time.sleep(3) self.match_page.wait_element("确定").click() time.sleep(3) self.match_page.screenshot("4.png") time.sleep(3) self.match_page.wait_element("马上报名").click() time.sleep(3) if (self.game_page.element_is_exist("资源下载-确定") == True): self.game_page.wait_element("资源下载-确定").click() time.sleep(10) else: self.match_page.screenshot("5.png") time.sleep(3) self.match_page.wait_element("知道了/现在进入").click() time.sleep(3) print("邀请赛报名成功") self.match_page.wait_element("箭头返回").click() time.sleep(3) self.start_step("查看我报名的邀请赛") self.match_page.wait_element("我报名的邀请赛").click() time.sleep(3) self.match_page.screenshot("6.png") self.match_page.wait_element("已报名比赛1").click() time.sleep(3) self.match_page.screenshot("7.png") time.sleep(3) self.match_page.wait_element("退赛").click() time.sleep(3) self.match_page.screenshot("8.png") time.sleep(2) self.luadriver.keyevent(4) time.sleep(3) self.match_page.wait_element("箭头返回").click() time.sleep(3) self.match_page.wait_element("返回").click() time.sleep(3) self.hall_page.wait_element("同步标志") def post_test(self): ''' 测试用例执行完后,清理测试环境 ''' try: self.common.recover_user(mid) self.common.closedriver() except: self.log_info("close driver fail")
class C27364_Money_Notenough(TestCase): ''' 携带银币少于入场下限但未破产情况下入场 ''' owner = "ShelleyZhang" status = EnumStatus.Design priority = EnumPriority.High timeout = 30 def pre_test(self): self.common = Common() self.hall_page = Hall_Page() self.yuepai_page = Yuepai_Page() self.game_page = Game_Page() # 初始化Luadriver self.start_step("初始化driver") self.luadriver = self.common.setupdriver() self.start_step("获取mid") global mid mid = self.common.get_config_value("casecfg", "mid") self.common.closeactivity(self.luadriver) def action(self): try: while (self.hall_page.element_is_exist("预发布") != True): self.luadriver.back() time.sleep(10) print "等待牌局打完" except: print "退出牌局失败" def bian_li(self, isChange=False): game_list = self.game_page.get_game_list() for i in range(len(game_list)): gameid_name = game_list[i].get_attribute("name") self.start_step("获取游戏ID: %s 初级场下限是" % gameid_name) gameid = int(gameid_name[4:len(gameid_name)]) gamecfg = PHPInterface.get_levelconfig(gameid, 0, 0, 12) #获取入场下限的配置 low_limit = gamecfg.get('values', {'LOW_LIMIT': None}).get('LOW_LIMIT') self.log_info("游戏ID: %s 初级场下限是%d" % (gameid_name, low_limit)) self.common.set_coin(mid=mid, value= low_limit - 10) self.common.switchserver() self.common.closeActivityBtn() try: if isChange and self.hall_page.element_is_exist("换页"): self.hall_page.wait_element("换页").click() #判断是否需要换页 game_list[i].click() time.sleep(2) self.game_page.game_is_download() ele = self.hall_page.get_elements("场次名称") time.sleep(2) if len(ele) == 3: ele[2].click() time.sleep(3) self.hall_page.screenshot("%s_Highscreen.png" % game_list[i].get_attribute("name")) self.action() #得到返回界面 time.sleep(2) elif len(ele) == 2: ele[1].click() time.sleep(3) self.hall_page.screenshot("%s_Middlescreen.png" % game_list[i].get_attribute("name")) self.action() time.sleep(2) elif len(ele) == 1: self.hall_page.screenshot("%s_NotHaveHighscreen.png" % game_list[i].get_attribute("name")) else: ele[3].click() time.sleep(3) self.hall_page.screenshot("%s_Otherscreen.png" % game_list[i].get_attribute("name")) self.action() time.sleep(2) #点击高级场 try: self.hall_page.wait_element("关闭对话框").click() self.yuepai_page.is_exist_yuepairoom() except: print "退出房间失败" if self.hall_page.wait_element("返回1") != None: self.hall_page.wait_element("返回1").click() except: try: self.hall_page.wait_element("重新获取").click() self.hall_page.screenshot("%s_downloadfail.png" % game_list[i].get_attribute("name")) except: self.log_info("重新获取元素並未存在") def run_test(self): ''' 测试用例 ''' self.start_step("等待页面加载完成") self.start_step("获取子游戏列表") self.bian_li() self.hall_page.wait_element("换页").click() self.bian_li(True) def post_test(self): ''' 测试用例执行完成后,清理测试环境 ''' self.common.recover_user(mid) self.common.closedriver()