class D25763_FourRoom_Cards_Display(TestCase): ''' 房间内底牌及倍数显示是否正常 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 15 pending = True def pre_test(self): self.common = Common() self.start_step("设置金币数为30001") global mid, money mid = self.common.get_config_value("casecfg", "mid") self.common.set_money(mid, 30001) 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() def run_test(self): self.hall_page.wait_element("同步标志") self.start_step("进入四人场") while self.hall_page.element_is_exist("游戏列表"): elments = self.hall_page.get_elements("游戏列表") elments[3].click() self.start_step("查看房间列表") elments = self.level_page.get_elements("房间列表") self.start_step("进入房间") difenlist = {'1': '10', '2': '50', '3': '100'} for j in range(len(elments) / 2): if j < 3: self.start_step("进入第%s个房间" % (j + 1)) elments[j].click() time.sleep(5) self.game_page.wait_element("四人场房间底分") self.game_page.screenshot("第%s个房间底分为%s.png" % ((j + 1), difenlist[str(j + 1)])) image_element = self.game_page.wait_element("四人场房间底分") beishutext = self.common.image_text(image_element) # if beishutext.isdigit(): # self.assert_equal("底分展示",actual=beishutext,expect=difenlist[str(j+1)]) while self.game_page.element_is_exist("退出"): self.game_page.wait_element("退出").click() self.game_page.is_in_gameroom(self.luadriver) def post_test(self): try: self.game_page.is_in_gameroom(self.luadriver) self.common.set_money(mid, 5000) finally: self.common.closedriver()
class D25759_FourRoom_Enter(TestCase): ''' 玩家金币不足 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 15 pending = True def pre_test(self): self.common = Common() global mid mid = self.common.get_config_value("casecfg", "mid") self.common.set_money(mid, 4000) self.hall_page = Hall_Page() self.level_page = Level_Page() self.game_page = Game_Page() self.start_step("初始化driver") self.luadriver = self.common.setupdriver() self.common.closeactivity() def run_test(self): self.hall_page.wait_element("同步标志") self.start_step("进去四人场") while self.hall_page.element_is_exist("游戏列表"): elments = self.hall_page.get_elements("游戏列表") elments[3].click() elments = self.level_page.get_elements("房间列表") print len(elments) for j in range(len(elments) / 2): self.start_step("点击第%s个房间" % (j + 1)) elments[j].click() try: self.level_page.wait_element("关闭2").click() except: self.log_info("未出现此按钮") self.game_page.element_is_exist("立即购买") self.assert_equal( "检查是否出现立即购买", self.level_page.wait_element("立即购买文本").get_attribute("text") == "立即购买") self.game_page.screenshot("点击第%s个房间界面.png" % (j + 1)) self.hall_page.wait_element("关闭1").click() self.game_page.is_in_gameroom(self.luadriver) def post_test(self): try: self.game_page.is_in_gameroom(self.luadriver) self.common.set_money(mid, 5000) finally: self.common.closedriver()
class Game_Page(Element): def to_hall_page(self, element): self.hall_page = Hall_Page() self.game_page = Game_Page() if not self.hall_page.element_is_exist(element, 2): try: self.game_page.wait_element("返回").click() self.game_page.wait_element("离开").click() while self.game_page.element_is_exist("确定1", 2): self.game_page.wait_element("确定1").click() while self.game_page.element_is_exist("返回大厅", 2): self.game_page.wait_element("返回大厅").click() except: print "未出现此元素"
class D25770_FourRoom_Money_Display(TestCase): ''' 金币和元宝信息显示正常 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 15 def pre_test(self): self.common = Common() global mid, money mid = self.common.get_config_value("casecfg", "mid") self.common.set_money("mid", value="5000") money = Interface.get_money(mid) self.log_info("金币数:%s" % money) 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() def run_test(self): self.hall_page.wait_element("同步标志") self.start_step("进入四人场") while self.hall_page.element_is_exist("游戏列表"): elments = self.hall_page.get_elements("游戏列表") elments[3].click() self.start_step("进入房间") while self.level_page.element_is_exist("房间列表"): self.level_page.wait_element("房间列表").click() time.sleep(5) self.game_page.screenshot("金币元宝显示.png") image_element = self.game_page.wait_element("购买金币") text = self.common.image_text(image_element) self.log_info("text:" + text) self.start_step("接口获取的金币数目为:%s,界面获取的金币数目为:%s,核对是否一致" % (money, text)) # if text.isdigit(): # self.assert_equal("金币数是否一致",actual=text,expect=money) self.game_page.is_in_gameroom(self.luadriver) def post_test(self): try: self.game_page.is_in_gameroom(self.luadriver) self.common.set_money(mid, 5000) finally: self.common.closedriver()
class D25708_DoubleLaizi_Quickstart(TestCase): ''' 金币不足,快速开始 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 20 def pre_test(self): self.common = Common() global mid mid = self.common.get_config_value("casecfg", "mid") self.common.set_money(mid, 999) self.hall_page = Hall_Page() self.level_page = Level_Page() self.game_page = Game_Page() self.start_step("初始化driver") self.luadriver = self.common.setupdriver() self.common.closeactivity() 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("游戏列表") print len(elments1) elments1[1].click() self.level_page.wait_element("快速开始").click() try: self.level_page.wait_element("关闭2").click() except: self.log_info("未出现此按钮") self.game_page.element_is_exist("立即购买") self.assert_equal( "检查是否出现立即购买", self.level_page.wait_element("立即购买文本").get_attribute("text") == "立即购买") self.game_page.screenshot("快速开始界面.png") self.hall_page.wait_element("关闭1").click() self.game_page.is_in_gameroom(self.luadriver) def post_test(self): try: self.game_page.is_in_gameroom(self.luadriver) self.common.set_money(mid, 5000) finally: self.common.closedriver()
class D25726_DoubleLaizi_Money_Display(TestCase): ''' 房间金币元宝显示 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 15 def pre_test(self): self.common = Common() global money money = 1000 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=money) def run_test(self): self.start_step("进入双癞子场") while self.hall_page.element_is_exist("游戏列表"): elments1 = self.hall_page.get_elements("游戏列表") elments1[1].click() self.start_step("进入房间") while self.level_page.element_is_exist("房间列表"): self.level_page.wait_element("房间列表").click() time.sleep(5) self.game_page.screenshot("金币元宝显示.png") elment1 = self.game_page.wait_element("购买金币") text = self.common.image_text(elment1) self.log_info("text:" + text) self.start_step("界面获取的金币数目为:%s,核对是否一致" % text) env = self.common.get_config_value('casecfg', 'env') if env == "0": if text.isdigit(): self.game_page.screenshot("界面金币数") self.log_info("当前为正式服,界面获取的金币数目为:%s" % text) elif env == "1": if text.isdigit(): self.assert_equal("当前为测试服,判断金币数是否一致", actual=int(text) == 1000) self.game_page.is_in_gameroom(self.luadriver) def post_test(self): self.game_page.is_in_gameroom(self.luadriver) self.common.closedriver()
class D25748_LaiziRoom_Money_Display(TestCase): ''' 房间金币元宝显示 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 15 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=1000) 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[1].click() self.game_page.wait_element("切换按钮").click() elments = self.game_page.get_elements("切换玩法") elments[0].click() # self.level_page.wait_element("快速开始").click() self.start_step("进入房间") while self.level_page.element_is_exist("房间列表"): self.level_page.wait_element("房间列表").click() time.sleep(5) self.game_page.screenshot("金币元宝显示.png") elment1 = self.game_page.wait_element("购买金币") text = self.common.image_text(elment1) self.log_info("text:" + text) if text.isdigit(): self.start_step("界面获取的金币数目为:%s" % text) 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 D25758_FourRoom_Displays(TestCase): ''' 金币不足 ''' owner = "LucyLiu" 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_money(mid, 1000) self.hall_page = Hall_Page() self.level_page = Level_Page() self.game_page = Game_Page() self.start_step("初始化driver") self.luadriver = self.common.setupdriver() self.common.closeactivity() def run_test(self): self.hall_page.wait_element("同步标志") self.start_step("进去四人场") while self.hall_page.element_is_exist("游戏列表"): elments = self.hall_page.get_elements("游戏列表") elments[3].click() self.start_step("点击快速开始") self.level_page.wait_element("快速开始").click() self.level_page.screenshot("破产点击快速开始出现的界面.png") try: self.level_page.wait_element("关闭2").click() except: self.log_info("未出现此按钮") self.level_page.element_is_exist("立即购买") self.assert_equal( "检查是否出现立即购买", self.level_page.wait_element("立即购买文本").get_attribute("text") == "立即购买") self.level_page.screenshot("立即购买") def post_test(self): try: self.game_page.is_in_gameroom(self.luadriver) self.common.set_money(mid, 5000) finally: self.common.closedriver()
class D25684_LaiziRoom_Switch(TestCase): ''' 天地癞子与普通癞子切换正常 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 15 # 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=1000) 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("游戏列表") print len(elments1) elments1[1].click() self.start_step("查看天地癞子界面") self.game_page.element_is_exist("天地癞子") self.hall_page.screenshot("天地癞子房间列表.png") self.start_step("切换到癞子场") self.game_page.wait_element("切换按钮").click() elments = self.game_page.get_elements("切换玩法") elments[0].click() time.sleep(3) self.game_page.element_is_exist("天地癞子") == False # self.level_page.wait_element("快速开始").click() self.game_page.screenshot("癞子场.png") def post_test(self): try: self.game_page.is_in_gameroom(self.luadriver) finally: self.common.closedriver()
class D25703_LaiziRoom_Change_Table(TestCase): ''' 换桌 ''' owner = "LucyLiu" 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.level_page = Level_Page() self.start_step("初始化driver") self.luadriver = self.common.setupdriver() self.common.closeactivity() self.common.user_money(money=1000) def run_test(self): self.hall_page.wait_element("同步标志") self.start_step("进去癞子场") while self.hall_page.element_is_exist("游戏列表",1): elments1 = self.hall_page.get_elements("游戏列表") elments1[1].click() self.game_page.wait_element("切换按钮").click() elments = self.game_page.get_elements("切换玩法") elments[0].click() # self.level_page.wait_element("快速开始").click() self.start_step("进入房间") while self.level_page.element_is_exist("房间列表"): self.level_page.wait_element("房间列表").click() time.sleep(6) self.game_page.wait_element("换桌").click() self.level_page.screenshot("换桌.png",sleeptime=0) self.level_page.screenshot("换桌1.png",sleeptime=1) 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 D25774_FourRoom_Change_Table(TestCase): ''' 换桌 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 15 def pre_test(self): self.common = Common() global mid, money mid = self.common.get_config_value("casecfg", "mid") self.common.set_money(mid, 5000) 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() 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[3].click() self.start_step("进入房间") while self.level_page.element_is_exist("房间列表"): self.level_page.wait_element("房间列表").click() time.sleep(6) self.game_page.wait_element("换桌").click() self.level_page.screenshot("换桌.png") self.level_page.screenshot("换桌1.png") self.start_step("退出玩牌房间") self.game_page.is_in_gameroom(self.luadriver) def post_test(self): try: self.game_page.is_in_gameroom(self.luadriver) self.common.set_money(mid, 5000) finally: self.common.closedriver()
class D25685and25686_LaiziRoom_Effect(TestCase): ''' 金币推荐场次特效 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 15 # pending = True def pre_test(self): self.common = Common() self.hall_page = Hall_Page() self.level_page = Level_Page() self.game_page = Game_Page() self.start_step("初始化driver") self.luadriver = self.common.setupdriver() self.common.closeactivity() self.common.user_money(money=1000) def run_test(self): self.start_step("进去癞子场") while self.hall_page.element_is_exist("游戏列表"): elments1 = self.hall_page.get_elements("游戏列表") elments1[1].click() self.game_page.wait_element("切换按钮").click() elments = self.game_page.get_elements("切换玩法") elments[0].click() self.level_page.wait_element("快速开始").click() self.start_step("查看场次特效") self.game_page.screenshot("场次界面特效_1.png", sleeptime=2) self.game_page.screenshot("场次界面特效_2.png", sleeptime=0) self.game_page.screenshot("场次界面特效_3.png", sleeptime=0) def post_test(self): try: self.game_page.is_in_gameroom(self.luadriver) finally: self.common.closedriver()
class D25753_ThreeRoom_Change_Table(TestCase): ''' 换桌 ''' owner = "LucyLiu" 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.level_page = Level_Page() self.start_step("初始化driver") self.luadriver = self.common.setupdriver() self.common.closeactivity() self.common.user_money(money=1000) 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("游戏列表") print len(elments1) elments1[2].click() self.start_step("查看房间列表") while self.level_page.element_is_exist("房间列表"): self.level_page.wait_element("房间列表").click() self.game_page.wait_element("换桌").click() self.level_page.screenshot("换桌.png") self.level_page.screenshot("换桌1.png") 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 D25707and25710_DoubleLaizi_Display(TestCase): ''' 双癞子场界面 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 15 # 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): while self.game_page.element_is_exist("同步标志"): self.game_page.exit_game() self.hall_page.wait_element("同步标志") self.start_step("进入癞子场") while self.hall_page.element_is_exist("游戏列表"): elments1 = self.hall_page.get_elements("游戏列表") print len(elments1) elments1[1].click() self.start_step("查看天地癞子界面") self.game_page.element_is_exist("天地癞子") self.start_step("查看场次特效") self.game_page.screenshot("场次界面特效_1.png", sleeptime=2) self.game_page.screenshot("场次界面特效_2.png", sleeptime=0) self.game_page.screenshot("场次界面特效_3.png", sleeptime=0) def post_test(self): self.common.closedriver()
class D25737_ThreeRoom_InAndOut(TestCase): ''' 房间内按钮跳转 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 20 # print "开始" # 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("游戏列表") print len(elments1) elments1[2].click() self.start_step("查看房间列表") while self.level_page.element_is_exist("房间列表"): self.level_page.wait_element("房间列表").click() self.game_page.wait_element("聊天") self.game_page.screenshot("第一次进房间.png") self.start_step("点击退出键退出房间") i = 0 while self.game_page.element_is_exist("退出"): self.game_page.wait_element("退出").click() i += 1 self.log_info("点击退出次数:%s" % i) self.level_page.wait_element("同步标志") self.hall_page.screenshot("点击退出键退出房间.png") self.level_page.wait_element("房间列表").click() self.game_page.wait_element("聊天") self.game_page.screenshot("第二次进房间.png") self.start_step("点击物理返回键退出房间") while self.game_page.element_is_exist("同步标志"): self.luadriver.keyevent(4) time.sleep(4) self.log_info("点击物理返回键") self.level_page.wait_element("同步标志", 30) self.hall_page.screenshot("物理返回键退出房间.png") self.level_page.wait_element("房间列表").click() self.game_page.wait_element("聊天") self.game_page.screenshot("第三次进房间.png") self.start_step("点击开始按钮") self.game_page.wait_element("开始", 30).click() self.hall_page.screenshot("点击开始按钮.png") i = 0 while self.game_page.element_is_exist("退出"): self.game_page.wait_element("退出").click() i += 1 self.log_info("点击退出次数:%s" % i) if i > 5: 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("托管") if self.game_page.element_is_exist("机器人") == False: self.game_page.wait_element("托管").click() while self.game_page.element_is_exist("继续游戏", 1) == False: time.sleep(1) self.log_info("正在游戏中") 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 C27417_personCardLevel_openOtherView(TestCase): ''' 个人资料卡打开情况下,打开其他界面查看层级 ''' owner = "GuixiangGui" status = EnumStatus.Design priority = EnumPriority.High timeout = 30 def pre_test(self): self.game_page = Game_Page() self.hall_page = Hall_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(gameId): self.start_step("%s 子游戏初级场" % gameId) self.game_page.wait_element("初级场").click() elist = ["聊天", "聊天1", "对局流水", "番数说明", "牌型", "规则", "菜单键"] for eName in elist: # if not self.game_page.element_is_exist("物品箱", 3): if self.game_page.element_is_exist(eName, 2): try: self.game_page.get_elements("头像frame")[0].click() self.game_page.screenshot(gameId + "_" + eName + "_headview.png") self.game_page.wait_element(eName).click() self.game_page.screenshot(gameId + "_" + eName + ".png") except: self.game_page.screenshot(gameId + "_notfoundhead" + ".png") # return self.yuepai_page.is_exist_yuepairoom() # if self.game_page.element_is_exist(eName, 2): # self.game_page.wait_element(eName).click() # self.game_page.screenshot(gameId+"_"+eName+".png") 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.game_play_way() test_game(gameElement.get_attribute("name")) while True: if self.hall_page.element_is_exist("客服", 3): 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.closedriver()
class base(TestCase): def pre_test(self, propsCount): self.hall_page = Hall_Page() self.game_page = Game_Page() self.common = Common() mid = self.common.get_config_value("casecfg", "mid") # PHPInterface self.start_step("初始化driver") self.driver = self.common.setupdriver() self.start_step("关闭弹出框") self.common.closeactivity(self.driver) def test(self, useCount=1): def test_game(gameId): headsEle = self.game_page.get_elements("头像frame") propsEle = self.game_page.get_elements("道具") headsEle[0].click() self.game_page.screenshot(gameId + "_propsDisplay" + ".png") propsEle[0].click() self.game_page.screenshot(gameId + "_self_interactive" + ".png") if len(headsEle) > 1: count = self.useCount while count > 0: headsEle[1].click() propsEle[0].click() count = count - 1 self.game_page.screenshot(gameId + "_playerB_interactive" + ".png") propsEle[0].click() self.game_page.screenshot(gameId + "_afterUse_display" + ".png") 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() gameId = gameElement.get_attribute("name") PHPInterface.set_robot_flag(re.search("\d+", gameId), 0, 0, 12, 1) if self.game_page.element_not_exist("广播"): self.game_page.click_game_play() self.game_page.get_elements("房间场次")[0].click() test_game(gameId) PHPInterface.set_robot_flag(re.search("\d+", gameId), 0, 0, 12, 0) while True: if self.hall_page.element_is_exist("客服", 3): break self.driver.back() self.useCount = useCount 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()
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 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 Common(): def __init__(self): self.log = Logger().get_logger() def platformLog(self,*arg): logStr = "" for v in arg: if type(v) != str: v = str(v) logStr = logStr + " " + v self.log.info(logStr) def setupdriver(self,agrs={}): '''初始化driver luadriver 用于游戏操作,对应appium ''' # 初始化Luadriver self.luaobj = LuaDriver() self.luaobj.creatLuaDriver(agrs) self.luadriver = self.luaobj.getLuaDriver() return self.luadriver def closedriver(self): '''关闭driver ''' self.luaobj.closeLuadriver() def closefloatBall(self): self.hall_page = Hall_Page() self.setting_page = Setting_Page() self.hall_page.wait_element("设置").click() try: self.setting_page.wait_element("关闭浮动球").click() except: print "浮动球已经关闭" try: self.setting_page.wait_element("页面返回").click() except: print "已经关闭" def deletefile(self,driver): print "----删除自动登录文件----" config = ConfigHelper(constant.cfg_path) package =config.getValue('appium', 'apppackage') command = "shell rm -r /mnt/sdcard/."+package+"/dict/lastLoginInfo.dat" print command try: driver.adb(command) except: print "命令执行失败" command1 = "shell rm -r /mnt/sdcard/."+package+"/dict/1lastLoginInfo.dat" print command1 try: driver.adb(command1) except: print "命令执行失败" command2 = "shell rm -r /mnt/sdcard/."+package+"/dict/2lastLoginInfo.dat" try: driver.adb(command2) except: print "命令执行失败" print command2 def closeactivity(self,luadriver): ''' 关闭活动页面 ''' self.hall_page = Hall_Page() time.sleep(20) # try: # if(self.luadriver.find_element_by_android_uiautomator('new UiSelector().textMatches("允许")')!=None): # self.luadriver.find_element_by_android_uiautomator('new UiSelector().textMatches("允许")').click() # except: # print "未出现允许按钮" self.hall_page.wait_element("头像",90) # try: # if(self.luadriver.find_element_by_android_uiautomator('new UiSelector().textMatches("允许")')!=None): # self.luadriver.find_element_by_android_uiautomator('new UiSelector().textMatches("允许")').click() # except: # print "未出现允许按钮" try: self.hall_page.wait_element("新手任务",8).click() except: print "未出现新手任务按钮" try: self.hall_page.wait_element("确认登陆",2).click() except: print "未出现登陆按钮" try: self.hall_page.wait_element("立即升级绑定账号",2).click() self.sign_page.wait_element("关闭1",2).click() except: print "未出现立即升级绑定账号按钮" #2017-9-27 JessicZeng 增加关闭版本升级框 try: self.hall_page.wait_element("资源下载-取消",2).click() except: print "未出现版本升级框" self.closeActivityBtn() # try: # luadriver.find_element_by_name("允许").click() # except: # print "未出现按钮" def closeactivity_switchserver(self,luadriver): ''' 关闭活动页面,切换到指定服,然后再关闭弹出的活动页面 :param luadriver: :param switchserver: :return: ''' self.closeactivity(luadriver) self.switchserver_init() self.closeactivity(luadriver) def switchserver(self): ''' 根据cfg文件切换正式服,测试服,预发布服 @return: ''' self.hall_page = Hall_Page() env = self.get_config_value('casecfg', 'env') if env=='0': try: self.hall_page.wait_element("正式服").click() except: print "切换到正式服失败" elif env =='1': try: self.hall_page.wait_element("测试服").click() except: print "切换到测试服失败" elif env =='2': try: self.hall_page.wait_element("预发布").click() except: print "切换到预发布失败" else: try: self.hall_page.wait_element("预发布").click() except: print "切换到预发布服失败" time.sleep(5) def switchserver_init(self): ''' 根据cfg文件切换正式服,测试服,预发布服 @return: ''' self.hall_page = Hall_Page() env = self.get_config_value('casecfg', 'env') if self.hall_page.element_is_exist("测试按钮"): self.hall_page.wait_element("测试按钮").click() if self.hall_page.element_is_exist("切换环境"): self.hall_page.wait_element("切换环境").click() if env == '0': try: # while self.hall_page.element_is_exist("正式1", 2): self.hall_page.get_element("正式1").click() except: print "切换到正式服失败" elif env == '1': try: # while self.hall_page.element_is_exist("测试1",2): self.hall_page.get_element("测试1").click() except: print "切换到测试服失败" elif env == '2': try: # while self.hall_page.element_is_exist("预发布1", 2): self.hall_page.get_element("预发布1").click() except: print "切换到预发布失败" else: try: # while self.hall_page.element_is_exist("预发布1", 2): self.hall_page.get_element("预发布1").click() except: print "切换到预发布服失败" else: self.hall_page.wait_element("关闭测试页面").click() if env=='0': try: self.hall_page.wait_element("正式服").click() except: print "切换到正式服失败" elif env =='1': try: self.hall_page.wait_element("测试服").click() except: print "切换到测试服失败" elif env =='2': try: self.hall_page.wait_element("预发布").click() except: print "切换到预发布失败" else: try: self.hall_page.wait_element("预发布").click() except: print "切换到预发布服失败" time.sleep(15) def closeActivityBtn(self): ''' 关闭活动弹框 :return: ''' self.sign_page = Sign_Page() self.hall_page = Hall_Page() try: self.hall_page.wait_element("新手任务",6).click() except: print "未出现新手任务按钮" i = 0 while (i < 5): i += 1 try: self.sign_page.wait_element("关闭1",3).click() except: print "关闭对话框" def switchnetwork(self, luadriver, network): ''' 测试用例运行过程中切换网络 ''' if(network == '无网络'): print "设置为无网络状态" luadriver.set_network_connection(ConnectionType.NO_CONNECTION) if(network == 'WIFI模式'): print "设置为WIFI模式" luadriver.set_network_connection(ConnectionType.WIFI_ONLY) if(network == '数据网络'): print "设置为数据网络模式" luadriver.set_network_connection(ConnectionType.DATA_ONLY) if(network == '飞行模式'): print "设置为飞行模式" luadriver.set_network_connection(ConnectionType.AIRPLANE_MODE) if(network == '全部网络打开模式'): print "设置为全部网络打开模式" luadriver.set_network_connection(ConnectionType.ALL_NETWORK_ON) def network_connect(self): ''' 2个线程的方式启动网络 ''' # print self.luadriver.network_connection if self.luadriver.network_connection != 2: t1 = threading.Thread(target=self.switch_network) t2 = threading.Thread(target=self.closebtn) t1.start() t2.start() t1.join() t2.join() def switch_network(self): ''' 测试用例运行过程中切换网络 ''' cmd = "shell am start -n com.example.unlock/.Unlock" print "adb start:" + str(time.time()) self.luadriver.adb(cmd) print "adb end:" + str(time.time()) def closebtn(self): time.sleep(1) print "closebtn" + str(time.time()) try: self.luadriver.find_element_by_android_uiautomator('new UiSelector().textMatches("确定|允许")').click() print "close1" + str(time.time()) except: print "1" + str(time.time()) try: self.luadriver.find_element_by_android_uiautomator('new UiSelector().textMatches("确定|允许")').click() print "close2" + str(time.time()) except: print "2" + str(time.time()) try: self.luadriver.find_element_by_android_uiautomator('new UiSelector().textMatches("确定|允许")').click() print "close3" + str(time.time()) except: print "3" + str(time.time()) def swipeelement(self,element1,element2): # swipe_startx = element1.location['x']+element1.size['width']/2 # swipe_starty = element1.location['y']+element1.size['height']/2 swipe_startx = element1.location['x'] swipe_starty = element1.location['y'] # swipe_endx = element2.location['x']+element1.size['width']/2 # swipe_endy = element2.location['y']+element1.size['height']/2 swipe_endx = element2.location['x'] swipe_endy = element2.location['y'] print swipe_startx, swipe_starty, swipe_endx, swipe_endy self.luadriver.swipe(swipe_startx, swipe_starty, swipe_endx, swipe_endy,1000) def get_user(self): ''' 获取账号信息 ''' global user_info user_info = user_util.gimme_afree_account() while user_info ==None: time.sleep(5) user_info = user_util.gimme_afree_account() return user_info def release_user(self,user): ''' 释放用户 ''' print "release" print user try: user_util.release_account(user) except: print "release user fail" def get_cid(self): '''获取用户cid''' self.personinfo_page = Personinfo_Page() self.personinfo_page.wait_element("头像").click() cid = self.personinfo_page.wait_element("账号ID").get_attribute('text') print "获取的用户cid为: %s" % cid self.personinfo_page.wait_element("关闭").click() if (self.personinfo_page.element_is_exist("关闭")): # 如果弹破产弹框,则关闭 self.personinfo_page.wait_element("关闭").click() return cid def get_mid(self): cid = self.get_cid() time.sleep(3) config = ConfigHelper(constant.cfg_path) region = config.getValue('casecfg', 'region') mid = PHPInterface.get_mid(cid, region) print "用户mid为:%s" % mid return mid def set_coin(self,mid,value): # 获取用户银币信息 result_userinfo = PHPInterface.get_user_info(mid) myuser_info = json.loads(result_userinfo) coin = myuser_info.get('result', {'coin': None}).get('coin') AddMoney = int(value) - int(coin) result = PHPInterface.add_money(mid, AddMoney) print "用户银币数为:%s" % AddMoney,"加金币执行结果:",result def set_crystal(self,mid,value): # 设置金条数据 result_userinfo = PHPInterface.get_user_info(mid) myuser_info = json.loads(result_userinfo) crystal = myuser_info.get('result', {'crystal': None}).get('crystal') # 获取当前金条值 print "用户金条数为:%s" % crystal AddMoney = int(value) - int(crystal) PHPInterface.add_crystal(mid, AddMoney) def loginuser(self,user,passwd): self.login_page = Login_Page() self.setting_page = Setting_Page() self.hall_page = Hall_Page() time.sleep(6) self.setting_page.wait_element("切换账号").click() time.sleep(2) try: self.setting_page.wait_element("继续登录").click() except: print "不需要继续切换" try: self.setting_page.wait_element("删除历史账号").click() except: print "无历史账号" time.sleep(1) self.setting_page.wait_element("手机号码").send_keys(user) time.sleep(1) self.setting_page.wait_element("密码").send_keys(passwd) time.sleep(1) self.setting_page.wait_element("确认登陆").click() time.sleep(10) self.hall_page.wait_element("同步标志") time.sleep(1) def get_idle_userinfo_and_mid(self): ''' 获取一个空闲账号的mid :return: ''' user_info = self.get_user() print user_info UserCID = user_info.get('cid') config = ConfigHelper(cfg_path) region = config.getValue('casecfg', 'region') UserMID = PHPInterface.get_mid(UserCID, region) mid_and_userinfo = {} mid_and_userinfo['userinfo'] = user_info mid_and_userinfo['mid'] = UserMID return mid_and_userinfo def unlock(self): #解锁 self.luadriver.adb("shell am start -n com.example.unlock/.Unlock") time.sleep(4) self.luadriver.keyevent(3) # home time.sleep(3) self.luadriver.adb("shell am start -n com.example.unlock/.Unlock") self.luadriver.keyevent(3) # home time.sleep(3) print "读配置,拉起游戏" config=ConfigHelper(constant.cfg_path) self.luadriver.start_activity(config.getValue('appium','apppackage'), config.getValue('appium','appactivity')) def get_config_value(self,section,key): #从cfg.ini文件获取配置项的值 config = ConfigHelper(constant.cfg_path) value =config.getValue(section, key) return value def set_config_value(self,section,key,value): #设置cfg.ini文件获取配置项的值 config = ConfigHelper(constant.cfg_path) config.modifConfig(section, key,value) return True def recover_user(self,mid): #初始化用户 self.set_coin(mid,'10000') self.set_crystal(mid,"0") PHPInterface.set_vip(mid,"-1") self.set_safeBoxMoney(mid,0,0) self.set_safeBoxMoney(mid,0,1) def random_str(self,len): '''生成随机字符''' str = "" for i in range(len): str += (random.choice("safsdfsdfoewrweorewcvmdfadfdsafdskafaklvoreiutwuerpmvcmvasieqwoejandfsxmndje")) return str def set_safeBoxMoney(self,mid, money, money_type): #money_type=0银币,1为金条 safeBoxInfo = PHPInterface.get_safebox(mid) if money_type == 0: safeBoxMoney=int(safeBoxInfo.get("safebox")) else: safeBoxMoney = int(safeBoxInfo.get("crystalsafebox")) if safeBoxMoney - money > 0: PHPInterface.withdraw_safebox(mid, safeBoxMoney - money, money_type) if money_type ==0: PHPInterface.add_money(mid, -(safeBoxMoney - money)) else: PHPInterface.add_crystal(mid, -(safeBoxMoney - money)) else: if money_type ==0: PHPInterface.add_money(mid, money - safeBoxMoney) else: PHPInterface.add_crystal(mid, money - safeBoxMoney) PHPInterface.deposit_safebox(mid, money - safeBoxMoney, money_type) def room_set_cheat(self, game_list, switch=1): for i in range(len(game_list)): gameId = filter(lambda ch: ch in '0123456789', game_list[i].get_attribute("name")) if switch == 1: print "设置子游戏:%s 标准场为作弊场" % gameId else: print "设置子游戏:%s 标准场为非作弊场" % gameId for i in range(4): PHPInterface.set_cheat(gameid=gameId, playmode=i, switch=switch) def set_robot(self,gameid,level=12,robotflag=0): ''' 设置机器人开关 ''' gamecfg = PHPInterface.get_levelconfig(gameid, 0, 0, level) robotflag1 = gamecfg.get('values', {'ADDROBOTFLAG': None}).get('ADDROBOTFLAG') if (robotflag1 != robotflag): result = PHPInterface.set_robot_flag(gameid, 0, 0, level, robotflag=robotflag) print result return True def checkPopVisible(self,driver,page,flagElName="同步标志"): ''' 根据page同步标志判断弹框是否存在,直至元素不存在或者操作次数操作3次 :param page: 操作页 :param flagElName: 同步标志元素name :return: ''' cnt = 0 while cnt < 3: try: page.get_element(flagElName) if driver != None : driver.keyevent(4) print "关闭弹框",page except: break cnt = cnt + 1
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 D25742_ThreeRoom_Interaction(TestCase): ''' 玩家互动 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 15 # 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("游戏列表") print len(elments1) elments1[2].click() self.start_step("查看房间列表") while self.level_page.element_is_exist("房间列表"): self.level_page.wait_element("房间列表").click() self.start_step("开始玩牌") while self.game_page.element_is_exist("开始"): self.game_page.wait_element("开始").click() 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("查看玩家信息") head_elements = self.game_page.get_elements("玩家头像") for i in range(1): head_elements[i].click() time.sleep(2) self.start_step("添加第%s个玩家为好友" % (i + 1)) self.game_page.wait_element("添加好友").click() self.game_page.screenshot("添加好友%s.png" % (i + 1), sleeptime=0) head_elements[i].click() self.game_page.wait_element("发送表情").click() self.game_page.screenshot("发送表情%s.png" % (i + 1), sleeptime=0) self.game_page.screenshot("发送表情%s_1.png" % (i + 1), sleeptime=0) head_elements[i].click() self.game_page.wait_element("举报").click() self.game_page.wait_element("举报信息").click() self.game_page.screenshot("举报信息%s.png" % (i + 1), sleeptime=0) self.game_page.wait_element("确定").click() self.game_page.screenshot("确定举报%s.png" % (i + 1), sleeptime=3) # while self.game_page.element_is_exist("继续游戏", 1): # break # while self.game_page.element_is_exist("QQ分享"): # self.game_page.screenshot("出现分享页面.png") # self.luadriver.keyevent(4) # break self.start_step("托管") if self.game_page.element_is_exist("机器人") == False: self.game_page.wait_element("托管").click() while self.game_page.element_is_exist("继续游戏", 1) == False: time.sleep(1) self.log_info("正在游戏中") self.game_page.screenshot("结算界面.png") 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 D25754_ThreeRoom_Broke_Display(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 play_game(self): self.start_step("开始玩牌") i = 1 while self.game_page.element_is_exist("破产对话框", 1) == False: while self.game_page.element_is_exist("开始"): self.game_page.wait_element("开始").click() while self.game_page.element_is_exist("继续游戏"): self.game_page.wait_element("继续游戏").click() self.start_step("开始玩第%s场牌" % i) starttime = time.time() while self.game_page.element_is_exist("正在配桌中", 1): 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 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("未出现抢地主按钮") try: self.game_page.wait_element("明牌X2", 2).click() except: self.log_info("未出现明牌按钮") if self.game_page.element_is_exist("继续游戏", 1): break if self.game_page.element_is_exist("机器人") == False: self.game_page.wait_element("托管").click() self.game_page.screenshot("第%s次托管玩牌.png" % i) while self.game_page.element_is_exist("继续游戏", 1) == False: time.sleep(1) self.log_info("正在游戏中") while self.game_page.element_is_exist("继续游戏", 1): self.game_page.screenshot("第%s次玩牌结算.png" % i) while self.game_page.element_is_exist("QQ分享", 1): self.luadriver.keyevent(4) while self.game_page.element_is_exist("破产气泡"): self.game_page.screenshot("三人场破产气泡.png") return try: string = "赢取达到携带金币上限" string in self.game_page.wait_element( "赢取达到携带金币上限").get_attribute("text") self.game_page.screenshot("赢取达到携带金币上限气泡.png") return except: self.log_info("未出现气泡") self.game_page.wait_element("继续游戏").click() while self.game_page.element_is_exist("去底倍场", 1): self.game_page.screenshot("第%s次玩牌提示去底倍场.png" % i) self.game_page.wait_element("去底倍场").click() i += 1 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.play_game() self.level_page.screenshot("破产界面.png") try: # self.game_page.wait_element("立即领取").click() self.assert_equal( "检查是否出现立即购买", self.level_page.wait_element("立即购买文本").get_attribute("text") == "立即购买") except: self.log_info("未出现此按钮") 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 D25751_ThreeRoom_Account_Display(TestCase): ''' 房间内结算显示 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 15 # 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("游戏列表") print len(elments1) 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("托管") if self.game_page.element_is_exist("机器人") == False: self.game_page.wait_element("托管").click() while self.game_page.element_is_exist("继续游戏", 1) == False: time.sleep(1) self.log_info("正在游戏中") self.game_page.screenshot("结算界面.png") 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 D25743_ThreeRoom_Setting(TestCase): ''' 房间内设置 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 15 # 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("游戏列表") print len(elments1) 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() 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("设置屏蔽聊天,查看设置结果") self.game_page.wait_element("设置").click() self.game_page.wait_element("屏蔽聊天").click() booltext = self.game_page.wait_element("屏蔽聊天").get_attribute( 'selected') self.game_page.wait_element("设置").click() self.game_page.wait_element("聊天").click() self.game_page.wait_element("常用语聊天列表").click() self.game_page.wait_element("聊天").click() self.game_page.wait_element("常用语聊天列表").click() if booltext == 'false': self.start_step("设置为非屏蔽聊天后的效果") self.game_page.screenshot("设置为非屏蔽聊天后截图.png") else: self.start_step("设置为屏蔽聊天后的效果") self.game_page.screenshot("设置为屏蔽聊天后截图.png") self.start_step("恢复") self.game_page.wait_element("设置").click() self.game_page.wait_element("屏蔽聊天").click() self.game_page.wait_element("设置").click() self.start_step("设置屏蔽连发表情,查看设置结果") self.game_page.wait_element("设置").click() while self.game_page.element_is_exist("屏蔽连发表情") == False: self.game_page.wait_element("设置").click() self.game_page.wait_element("屏蔽连发表情").click() booltext1 = self.game_page.wait_element("屏蔽连发表情").get_attribute( 'selected') self.game_page.wait_element("设置").click() self.game_page.wait_element("玩家头像").click() self.game_page.wait_element("连发十次互动表情").click() if booltext1 == 'false': # self.start_step("设置为非屏蔽连发表情后的效果") self.game_page.screenshot("设置为非屏蔽连发表情后截图.png", sleeptime=0) else: # self.start_step("设置为屏蔽连发表情后的效果") self.game_page.screenshot("设置为屏蔽连发表情后截图.png", sleeptime=0) self.start_step("恢复") self.game_page.wait_element("设置").click() self.game_page.wait_element("设置").click() self.game_page.wait_element("屏蔽连发表情").click() self.game_page.wait_element("设置").click() self.start_step("托管") if self.game_page.element_is_exist("机器人") == False: self.game_page.wait_element("托管").click() while self.game_page.element_is_exist("继续游戏", 1) == False: time.sleep(1) self.log_info("正在游戏中") self.game_page.screenshot("结算界面.png") 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 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()
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 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 D0003_LaiziRoom_GamePlay_Moretime(TestCase): ''' 癞子场玩牌 ''' owner = "LucyLiu" status = EnumStatus.Design priority = EnumPriority.High timeout = 70 # pending = True def pre_test(self): global starttime, endtime starttime = time.time() self.common = Common() self.hall_page = Hall_Page() self.level_page = Level_Page() self.game_page = Game_Page() self.start_step("初始化driver") self.luadriver = self.common.setupdriver() self.common.closeactivity() self.common.user_money(money=1000) def gameplay(self): i = 1 self.game_page.wait_element("开始").click() # while self.game_page.element_is_exist("立即领取"): # self.game_page.wait_element("关闭1").click() while self.game_page.element_is_exist("破产对话框", 1) == False: self.start_step("开始玩第%s场牌" % i) 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 while self.game_page.element_is_exist("出牌", 1) == False: list1 = ["叫地主", "不叫"] self.log_info("叫地主中") from random import choice print choice(list1) try: self.game_page.wait_element(choice(list1), 1).click() except: self.log_info("未出现抢地主按钮") list = ["叫地主", "不叫", "抢地主"] 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 if self.game_page.element_is_exist("继续游戏", 1): break if self.game_page.element_is_exist("机器人", timeout=20) == False: self.game_page.wait_element("托管").click() while (self.game_page.element_is_exist("提示", 1) or self.game_page.element_is_exist("出牌", 1)): try: self.game_page.wait_element("提示").click() self.game_page.element_is_exist("出牌").click() except: self.log_info("未出现提示按钮") self.game_page.screenshot("第%s次托管玩牌.png" % i) while self.game_page.element_is_exist("继续游戏", 1) == False: time.sleep(1) self.log_info("正在游戏中") self.game_page.screenshot("第%s次玩牌结算.png" % i) endtime = time.time() if (endtime - starttime) / 60 > self.timeout - 10: self.game_page.is_in_gameroom(self.luadriver) return while self.game_page.element_is_exist("继续游戏", 1): while self.game_page.element_is_exist("QQ分享"): self.game_page.screenshot("第%s次玩牌出现分享页面.png" % i) self.luadriver.keyevent(4) self.game_page.wait_element("继续游戏").click() while self.game_page.element_is_exist("去底倍场", 1): self.game_page.screenshot("第%s次玩牌提示去底倍场.png" % i) self.game_page.wait_element("去底倍场").click() while (self.game_page.element_is_exist("立即购买", 1) or self.game_page.element_is_exist("立即领取", 1)): try: self.game_page.wait_element("关闭1").click() except: self.log_info("未出现关闭按钮") try: self.game_page.wait_element("关闭2").click() except: self.log_info("未出现关闭按钮") self.game_page.exit_game(self.luadriver) self.common.user_money(money=1000) self.start_step("进去癞子场") while self.hall_page.element_is_exist("游戏列表"): elments1 = self.hall_page.get_elements("游戏列表") elments1[1].click() self.game_page.wait_element("切换按钮").click() elments = self.game_page.get_elements("切换玩法") elments[0].click() self.level_page.wait_element("快速开始").click() self.start_step("点击初级场房间") while self.level_page.element_is_exist("房间列表"): self.level_page.wait_element("房间列表").click() while self.game_page.element_is_exist("开始", 2): self.game_page.wait_element("开始").click() i += 1 def run_test(self): self.hall_page.wait_element("同步标志") self.start_step("进去癞子场") while self.hall_page.element_is_exist("游戏列表"): elments = self.hall_page.get_elements("游戏列表") elments[1].click() self.game_page.wait_element("切换按钮").click() elments = self.game_page.get_elements("切换玩法") elments[0].click() # self.level_page.wait_element("快速开始").click() self.start_step("点击初级场房间") while self.level_page.element_is_exist("房间列表"): self.level_page.wait_element("房间列表").click() self.gameplay() def post_test(self): try: self.game_page.is_in_gameroom(self.luadriver) finally: 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()