def test_result_star(self):
        self.login_page.app_status()  # 判断APP当前状态

        if self.home_page.wait_check_home_page():
            self.home_page.click_hk_tab(2)

            if self.homework.wait_check_hw_page():  # 页面检查点
                var = self.home_page.homework_count()
                if gv.STAR in var[0]:  # 该作业存在
                    for i in range(0, len(var[0])):
                        if var[0][i] == gv.STAR:
                            var[1][i].click()  # 点击进入该作业
                            # self.homework.games_count(0, gv.STAR_TYPE)
                            self.game_exist(gv.STAR_COUNT, gv.STAR)  # 具体操作

                            # if count[1] == 10:  # 小游戏list需翻页
                            #     game_count = self.homework.swipe_screen(gv.RATE_TYPE)
                            #     if len(game_count) != 0:
                            #         self.game_exist(game_count, gv.STAR)
                            # self.homework.back_up_button()  # 返回主界面
                else:
                    print('当前页no have该作业')
                    self.home_page.swipe_operate(var[0], gv.STAR,
                                                 gv.STAR_TYPE)  # 作业list翻页
                    self.game_exist(gv.STAR_COUNT, gv.STAR)  # 具体操作
                print('Game Over')
        else:
            Toast().find_toast(VALID_LOGIN_TOAST.login_failed())
            print("未进入主界面")
    def test_guess_word(self):
        self.login_page.app_status()  # 判断APP当前状态

        if self.home_page.wait_check_home_page():  # 页面检查点
            self.home_page.click_hk_tab(2)

            if self.homework.wait_check_hw_page():  # 页面检查点
                var = self.home_page.homework_count()
                if gv.GUE_WORD in var[0]:
                    for i in range(0, len(var[0])):
                        if var[0][i] == gv.GUE_WORD:
                            var[1][i].click()  # 点击进入该作业
                            count = self.homework.games_count(
                                0, '猜词游戏', gv.GUE_WORD)  # 小游戏个数统计
                            self.game_exist(count[0])  # 具体操作

                            if count[1] == 10:  # 判断小游戏list是否需滑屏
                                game_count = self.homework.swipe_screen('猜词游戏')
                                if len(game_count) != 0:
                                    self.game_exist(game_count)
                            break
                else:
                    print('当前页no have该作业')
                    game = self.home_page.swipe_operate(
                        var[0], gv.GUE_WORD, '猜词游戏')  # 作业list翻页
                    self.game_exist(game[0])
                print('Game Over')
        else:
            Toast().find_toast(VALID_LOGIN_TOAST.login_failed())
            print("未进入主界面")
Beispiel #3
0
    def test_apply_for_vanclass(self):
        self.login.app_status()  # 判断APP当前状态

        if self.home.wait_check_home_page():  # 页面检查点
            self.home.click_test_vanclass()  # 班级tab
            if self.van.wait_check_page():  # 页面检查点

                if self.van.wait_check_empty_tips():  # 暂无数据
                    print('暂无班级')
                else:  # 已有班级
                    print('已有班级:')
                    self.list_swipe_operate()  # 已有班级数 统计

                    for i in range(len(class_data)):
                        if self.van.wait_check_page(
                        ) and i != len(class_data) - 1:
                            self.apply_vanclass_operate(
                                class_data[i])  # 申请入班 具体操作

                    self.input_remark_name(class_data[-1])  # 班级备注名

                    if self.van.wait_check_page():  # 页面检查点
                        self.home.click_tab_hw()  # 返回主界面
        else:
            Toast().find_toast(VALID_LOGIN_TOAST.login_failed())
            print("未进入主界面")
Beispiel #4
0
    def test_privacy_clause(self):
        if self.home.wait_check_home_page():
            self.home.click_tab_profile()  # 进入首页后点击‘个人中心’按钮

            if self.user_center.wait_check_user_center_page():  # 页面检查点
                self.home.screen_swipe_up(0.5, 0.9, 0.3, 1000)
                self.user_center.click_setting()  # 进入设置页面
                if self.setting.wait_check_page():
                    self.setting.privacy_clause()  # 隐私条款

                    for i in range(4):
                        if self.privacy.wait_check_page():
                            print('翻页%s次' % (i + 1))
                            self.home.screen_swipe_up(0.5, 0.6, 0.4, 1000)
                            time.sleep(1)

                    if self.privacy.wait_check_page():
                        print('下拉一次')
                        self.home.screen_swipe_down(0.5, 0.2, 0.9, 1000)

                        if self.privacy.wait_check_page():
                            self.home.click_back_up_button()
                            if self.setting.wait_check_page():
                                print('success')
                            else:
                                print(' failed')
                            self.setting.back_up()  # 返回主界面
                    else:
                        print('未进入隐私条款页面')
        else:
            Toast().find_toast(VALID_LOGIN_TOAST.login_failed())
            print("未进入主界面")
    def test_listen_choice(self):
        self.login_page.app_status()  # 判断APP当前状态

        if self.home_page.wait_check_home_page():  # 主界面 页面检查点
            self.home_page.click_hk_tab(2)  # 进入习题

            if self.homework.wait_check_hw_page():  # 页面检查点
                var = self.home_page.homework_count()
                if gv.LIS_EXE in var[0]:
                    for i in range(0, len(var[0])):
                        if var[0][i] == gv.LIS_EXE:
                            var[1][i].click()
                            count = self.homework.games_count(
                                0, '听后选择', gv.LIS_EXE)  # 小游戏个数统计
                            self.game_exist(count[0])

                            if count[1] == 10:  # 判断小游戏list是否需滑屏
                                game_count = self.homework.swipe_screen('听后选择')
                                if len(game_count) != 0:
                                    self.game_exist(game_count)
                else:
                    print('当前页no have该作业')
                    game = self.home_page.swipe_operate(
                        var[0], gv.LIS_EXE, '听后选择')  # 作业list翻页
                    self.game_exist(game[0])
                    print('Game Over')
            else:
                Toast().find_toast(VALID_LOGIN_TOAST.login_failed())
                print("未进入主界面")
    def test_flash_card(self):
        """对不同小游戏类型,选择不同函数进行相应的操作"""
        self.login_page.app_status()  # 判断APP当前状态

        if self.home_page.wait_check_home_page():  # 页面检查点
            self.home_page.click_hk_tab(2)  # 进入习题

            if self.homework.wait_check_hw_page():  # 页面检查点
                var = self.home_page.homework_count()
                if gv.FLA_CARD in var[0]:  # 该作业存在
                    for i in range(0, len(var[0])):
                        if var[0][i] == gv.FLA_CARD:
                            var[1][i].click()  # 点击进入该作业
                            count = self.homework.games_count(
                                0, '闪卡练习', gv.FLA_CARD)  # 小游戏个数统计
                            self.game_exist(count[0])

                            if count[1] == 10:  # 小游戏list需翻页
                                game_count = self.homework.swipe_screen('闪卡练习')
                                if len(game_count) != 0:
                                    self.game_exist(game_count)
                            break
                else:
                    print('当前页no have该作业')
                    game = self.home_page.swipe_operate(
                        var[0], gv.FLA_CARD, '闪卡练习')  # 作业list翻页
                    self.game_exist(game[0])

                print('Game Over')
        else:
            Toast().find_toast(VALID_LOGIN_TOAST.login_failed())
            print("未进入主界面")
Beispiel #7
0
    def test_vocabulary_choice(self):
        self.login_page.app_status()  # 判断APP当前状态

        if self.home_page.wait_check_home_page():  # 页面检查点
            self.home_page.click_hk_tab(2)

            if self.homework.wait_check_hw_page():  # 页面检查点
                var = self.home_page.homework_count()
                if gv.VOC_CHO in var[0]:   # 该作业存在
                    for i in range(0, len(var[0])):
                        if var[0][i] == gv.VOC_CHO:
                            var[1][i].click()  # 点击进入该作业
                            count = self.homework.games_count(0, '词汇选择', gv.VOC_CHO)   # 统计小游戏个数
                            self.game_exist(count[0])  # 具体操作

                            if count[1] == 10:    # 判断小游戏list是否需翻页
                                game_count = self.homework.swipe_screen('词汇选择')
                                if len(game_count) != 0:
                                    self.game_exist(game_count)
                            break
                else:
                    print('当前页no have该作业')
                    game = self.home_page.swipe_operate(var[0], gv.VOC_CHO, '词汇选择')  # 作业list翻页
                    self.game_exist(game[0])
                #
                # self.verification_result()  # 答题结果验证
                print('Game Over')
        else:
            Toast().find_toast(VALID_LOGIN_TOAST.login_failed())
            print("未进入主界面")
Beispiel #8
0
    def test_register_protocol(self):
        if self.home.wait_check_home_page():
            self.home.click_tab_profile()  # 进入首页后点击‘个人中心’按钮

            if self.user_center.wait_check_user_center_page():  # 页面检查点
                self.home.screen_swipe_up(0.5, 0.9, 0.3, 1000)
                self.user_center.click_setting()  # 进入设置页面
                if self.setting.wait_check_page():

                    self.setting.register_protocol()  # 进入注册协议页面
                    for i in range(4):
                        if self.protocol.wait_check_page():  # 页面检查点
                            print('翻页%s次' % (i + 1))
                            BasePage().screen_swipe_up(0.5, 0.5, 0.25, 1000)

                    if self.protocol.wait_check_page():  # 页面检查点
                        print('下拉一次')
                        BasePage().screen_swipe_down(0.5, 0.05, 0.9, 1000)

                        if self.protocol.wait_check_page():  # 页面检查点
                            self.home.click_back_up_button()
                            if self.setting.wait_check_page():  # 页面检查点
                                print('success')
                            else:
                                print(' failed  ')
                            self.setting.back_up()  # 返回主界面
                    else:
                        print('未进入注册协议页面')
        else:
            Toast().find_toast(VALID_LOGIN_TOAST.login_failed())
            print("未进入主界面")
    def test_choice_word_cloze(self):
        self.login_page.app_status()  # 判断APP当前状态

        if self.home_page.wait_check_home_page():  # 页面检查点
            self.home_page.click_hk_tab(2)

            if self.homework.wait_check_hw_page():  # 页面检查点
                var = self.home_page.homework_count()
                if gv.CHO_WOR_CL in var[0]:  # 该作业存在
                    for i in range(len(var[0])):
                        if var[0][i] == gv.CHO_WOR_CL:
                            var[1][i].click()  # 点击进入该作业
                            count = self.homework.games_count(
                                0, '选词填空', gv.CHO_WOR_CL)
                            self.game_exist(count[0], gv.CHO_WOR_CL)

                            if count[1] == 10:  # 小游戏list需翻页
                                game_count = self.homework.swipe_screen('选词填空')
                                if len(game_count) != 0:
                                    self.game_exist(game_count, gv.CHO_WOR_CL)
                            break
                else:
                    print('当前页no have该作业')
                    game = self.home_page.swipe_operate(
                        var[0], gv.CHO_WOR_CL, '选词填空')  # 作业list翻页
                    self.game_exist(game[0], gv.CHO_WOR_CL)
                print('Game Over')
        else:
            Toast().find_toast(VALID_LOGIN_TOAST.login_failed())
            print("未进入主界面")
Beispiel #10
0
    def test_reading_comprehension(self):
        self.login_page.app_status()  # 判断APP当前状态

        if self.home_page.wait_check_home_page():  # 页面检查点
            self.home_page.click_hk_tab(2)

            if self.homework.wait_check_hw_page():  # 页面检查点
                var = self.home_page.homework_count()
                if gv.REA_COMPRE in var[0]:  # 该作业存在
                    for i in range(0, len(var[0])):
                        if var[0][i] == gv.REA_COMPRE:
                            var[1][i].click()  # 进入作业
                            count = self.homework.games_count(
                                0, '阅读理解', gv.REA_COMPRE)  # 小游戏个数统计
                            self.game_exist(count[0])  # 具体操作

                            if count[1] == 10:  # 判断小游戏list是否需滑屏
                                game_count = self.homework.swipe_screen('阅读理解')
                                if len(game_count) != 0:
                                    self.game_exist(game_count)
                            break
                else:
                    print('当前页no have该作业')
                    game = self.home_page.swipe_operate(
                        var[0], gv.REA_COMPRE, '阅读理解')  # 作业list翻页
                    self.game_exist(game[0])
                print('Game Over')
        else:
            Toast().find_toast(VALID_LOGIN_TOAST.login_failed())
            print("未进入主界面")
Beispiel #11
0
    def test_homework_ranking(self):
        self.login.app_status()  # 判断APP当前状态

        if self.home.wait_check_home_page():  # 页面检查点
            self.login.enter_user_info_page()  # 由 主界面 进入个人信息页
            if UserInfoPage().wait_check_page():
                nickname = UserInfoPage().nickname()  # 获取昵称
                self.homework.back_up_button()  # 返回个人中心页面
                if UserCenterPage().wait_check_user_center_page():
                    self.home.click_tab_hw()  # 进入主界面

                    if self.home.wait_check_home_page():  # 页面检查点
                        self.home.click_test_vanclass()  # 班级tab
                        if self.van.wait_check_page():  # 页面检查点

                            van = self.van.vanclass_name()  # 班级名称
                            for i in range(len(van)):
                                if van[i].text == gv.CLASS_NAME:
                                    van[i].click()  # 进入班级详情页
                                    break
                            if self.van.wait_check_vanclass_page(gv.CLASS_NAME):  # 页面检查点
                                self.van.vanclass_hw()  # 点击 本班作业 tab
                                if self.detail.wait_check_page(gv.CLASS_NAME):  # 页面检查点
                                    print('%s 本班作业:' % gv.CLASS_NAME)
                                    if self.van.wait_check_empty_tips():
                                        print('暂无数据')
                                    else:
                                        all_hw = self.detail.all_tab()  # 全部 tab
                                        if self.detail.selected(all_hw) is False:
                                            self.base_assert.except_error('Error- 未默认在 全部页面')
                                        else:
                                            print('--------------全部tab-------------------')
                                            if self.van.wait_check_empty_tips():
                                                print('暂无数据')
                                            else:
                                                self.hw_operate(nickname)  # 具体操作
                                        if self.detail.wait_check_page(gv.HW_NAME):  # 页面检查点
                                            self.home.click_back_up_button()  # 返回 班级详情页面
                                            if self.detail.wait_check_page(gv.CLASS_NAME):
                                                self.home.click_back_up_button()
                                            if self.van.wait_check_quit_vanclass(gv.CLASS_NAME):
                                                self.home.click_back_up_button()
                                            if self.van.wait_check_page():
                                                self.home.click_tab_hw()

                                        else:
                                            print('未返回 本班作业页面')
                                else:
                                    print('未进入班级 -本班作业tab')
                                    self.home.click_back_up_button()
                                    if self.van.wait_check_page():  # 班级 页面检查点
                                        self.home.click_tab_hw()  # 返回主界面
        else:
            Toast().find_toast(VALID_LOGIN_TOAST.login_failed())
            print("未进入主界面")
    def test_homework_reward(self):
        self.login.app_status()  # 判断APP当前状态

        if self.home.wait_check_home_page():  # 页面检查点
            self.home.click_test_vanclass()  # 班级tab
            if self.van.wait_check_page():  # 页面检查点

                van = self.van.vanclass_name()  # 班级名称
                for i in range(len(van)):
                    if van[i].text == gv.CLASS_NAME:
                        van[i].click()  # 进入班级详情页
                        break
                if self.van.wait_check_vanclass_page(gv.CLASS_NAME):  # 页面检查点

                    self.van.vanclass_hw()  # 点击 本班作业 tab
                    if self.detail.wait_check_page(gv.CLASS_NAME):  # 页面检查点
                        print('%s 本班作业:' % gv.CLASS_NAME)
                        if self.van.wait_check_empty_tips():
                            print('暂无数据')
                        else:
                            all_hw = self.detail.all_tab()  # 全部 tab
                            if self.detail.selected(all_hw) is False:
                                self.base_assert.except_error(
                                    'Error- 未默认在 全部页面')
                            incomplete = self.detail.finished_tab()  # 未完成 tab
                            incomplete.click()  # 进入 未完成 tab页
                            if self.detail.selected(incomplete) is False:
                                self.base_assert.except_error(
                                    'Error- 未进入 已完成 tab页')
                            else:
                                print(
                                    '--------------已完成tab-------------------')
                                self.share_operate()
                                if self.detail.wait_check_page(
                                        gv.CLASS_NAME):  # 页面检查点
                                    self.home.click_back_up_button(
                                    )  # 返回 班级详情 页
                                else:
                                    print('未返回 本班作业页面')
                    else:
                        print('未进入班级 -本班作业tab')
                        self.home.click_back_up_button()

                    if self.van.wait_check_quit_vanclass(
                            gv.CLASS_NAME):  # 班级 页面检查点
                        self.home.click_back_up_button()  # 返回主界面
                        if self.van.wait_check_page():
                            self.home.click_tab_hw()
        else:
            Toast().find_toast(VALID_LOGIN_TOAST.login_failed())
            print("未进入主界面")
Beispiel #13
0
    def test_change_password(self):
        if self.home.wait_check_home_page():
            self.home.click_tab_profile()  # 进入首页后点击‘个人中心’按钮

            if self.user_center.wait_check_user_center_page():  # 页面检查点
                self.user_center.click_avatar_profile()  # 点击登录头像按钮,进行个人信息操作

                if self.user_info.wait_check_page():
                    self.user_info.click_password()  # 点击修改密码
                    if self.pwd.wait_check_page():  # 页面检查点
                        self.pwd.pwd_checkbox()  # 点击 显示密码

                        for i in range(len(reset_pwd)):
                            if self.pwd.wait_check_page():  # 页面检查点
                                old_pwd = self.pwd.pwd_origin()
                                old_pwd.send_keys(reset_pwd[i]['old'])

                                # 输入新的密码
                                new_pwd = self.pwd.pwd_new()
                                new_pwd.send_keys(r'' + reset_pwd[i]['new'])
                                print('修改密码为:', new_pwd.text)

                                # 再次输入密码
                                again_pwd = self.pwd.pwd_confirm()
                                again_pwd.send_keys(r'' +
                                                    reset_pwd[i]['commit'])

                                self.pwd.confirm_button()  # 点击完成按钮
                                if self.user_info.wait_check_page():  # 页面检查点
                                    print('changed successfully')
                                    if i != len(reset_pwd) - 1:
                                        self.user_info.click_password(
                                        )  # 点击修改密码
                                        if self.pwd.wait_check_page():  # 页面检查点
                                            self.pwd.pwd_checkbox()  # 点击 显示密码
                                else:
                                    print('failed to change')
                                print('---------------------------------')
                else:
                    print('未进入个人信息页面')
                # self.user_info.back_up()
        else:
            Toast().find_toast(VALID_LOGIN_TOAST.login_failed())
            print("未进入主界面")
    def test_change_image(self):
        if self.home.wait_check_home_page():
            self.home.click_tab_profile()  # 进入首页后点击‘个人中心’按钮

            if self.user_center.wait_check_user_center_page():  # 页面检查点
                self.user_center.click_avatar_profile()  # 点击登录头像按钮,进行个人信息操作
                if self.user_info.wait_check_page():  # 页面检查点

                    # 获取登录后的头像截图
                    # image1 = self.user_info.image()
                    # t = self.screen_shot.screenshot(image1)
                    # self.assertTrue(t)

                    self.user_info.click_image()  # 点击头像条目,进入设置页面
                    if self.home.wait_check_tips_page():
                        self.home.tips_title()  # 弹框信息
                        self.user_info.click_photograph()

                        self.change_image.pixel_permission_allow()  # 拍照权限
                        if self.change_image.photo_upload_cancel():  # 上传照片具体操作
                            if self.user_info.wait_check_page():  # 页面检查点
                                # # 获取修改后的头像截图
                                # image2 = self.user_info.image()
                                # result = self.screen_shot.same_as_screenshot(image2,t)
                                # self.assertTrue(result)
                                print('choose cancel success')
                            else:
                                print('choose cancel failed')
                        else:
                            print('模拟器不具备拍照功能')

                        self.user_info.back_up()
                    else:
                        print('未进入拍照页面')
                else:
                    print('未进入个人信息页面')
            else:
                print('未进入个人中心页面')
        else:
            Toast().find_toast(VALID_LOGIN_TOAST.login_failed())
            print("未进入主界面")
Beispiel #15
0
    def test_result_ranking(self):
        self.login_page.app_status()  # 判断APP当前状态

        if self.home_page.wait_check_home_page():  # 页面检查点
            self.login_page.enter_user_info_page()  # 由 主界面 进入个人信息页
            if UserInfoPage().wait_check_user_center_page():
                nickname = UserInfoPage().nickname()  # 获取昵称
                self.homework.back_up_button()  # 返回个人中心页面
                if UserCenterPage().wait_check_user_center_page():
                    self.home_page.click_tab_hw()  # 进入主界面

                    if self.home_page.wait_check_home_page():  # 页面检查点

                        self.home_page.click_hk_tab(2)  # 进入 做作业
                        if self.homework.wait_check_hw_page():  # 页面检查点

                            var = self.home_page.homework_count()
                            if gv.RANK in var[0]:  # 该作业存在
                                for i in range(0, len(var[0])):
                                    if var[0][i] == gv.RANK:
                                        var[1][i].click()  # 点击进入该游戏
                                        # self.homework.games_count(0, gv.RANK_TYPE)
                                        self.game_exist(
                                            gv.RANK_COUNT, nickname)  # 具体操作
                                        # if count[1] == 10:  # 小游戏list需翻页
                                        #     game_count = self.homework.swipe_screen(gv.RATE_TYPE)
                                        #     if len(game_count) != 0:
                                        #         self.game_exist(game_count)
                                        # self.homework.back_up_button()  # 返回主界面
                            else:
                                print('当前页no have该作业')
                                self.home_page.swipe_operate(
                                    var[0], gv.RANK, gv.RANK_TYPE)  # 作业list翻页
                                self.game_exist(gv.RANK_COUNT,
                                                nickname)  # 具体操作
                            print('Game Over')
        else:
            Toast().find_toast(VALID_LOGIN_TOAST.login_failed())
            print("未进入主界面")
    def test_vanclass_homework_tab(self):
        self.login.app_status()  # 判断APP当前状态

        if self.home.wait_check_home_page():  # 页面检查点
            self.home.click_test_vanclass()  # 班级tab
            if self.van.wait_check_page():  # 页面检查点

                van = self.van.vanclass_name()  # 班级名称
                for i in range(len(van)):
                    if van[i].text == gv.CLASS_NAME:
                        van[i].click()  # 进入班级详情页
                        break

                if self.van.wait_check_vanclass_page(gv.CLASS_NAME):  # 页面检查点

                    self.van.vanclass_hw()  # 进入 本班作业
                    if self.detail.wait_check_page(gv.CLASS_NAME):  # 页面检查点
                        print('%s 本班作业:' % gv.CLASS_NAME)
                        self.all_hw_operate()  # 全部 tab
                        self.incomplete_operate()  # 未完成 tab
                        self.complete_operate()  # 已完成 tab

                        self.home.click_back_up_button()
                        if self.van.wait_check_vanclass_page(
                                gv.CLASS_NAME):  # 班级详情 页面检查点
                            self.home.click_back_up_button()
                            if self.van.wait_check_page():  # 班级 页面检查点
                                self.home.click_tab_hw()  # 返回主界面
                    else:
                        print('未进入 本班作业页面')
                        self.home.click_back_up_button()
                        if self.van.wait_check_page():  # 班级 页面检查点
                            self.home.click_tab_hw()  # 返回主界面
        else:
            try:
                Toast().find_toast(VALID_LOGIN_TOAST.login_failed())
            except Exception:
                print("未进入主界面")
                raise
Beispiel #17
0
    def test_quit_vanclass(self):
        self.login.app_status()  # 判断APP当前状态

        if self.home.wait_check_home_page():  # 页面检查点
            self.home.click_test_vanclass()  # 班级tab
            if self.van.wait_check_page():  # 页面检查点

                van = self.van.vanclass_name()  # 班级名称
                for i in range(len(van)):
                    if van[i].text == gv.DEL_VANCLASS:
                        van[i].click()  # 进入班级详情页
                        break
                self.quit_tips_operate()  # 退出班级提示框

                if self.van.wait_check_page():  # 班级 页面检查点
                    if self.van.wait_check_quit_vanclass(gv.DEL_VANCLASS):
                        self.base_assert.except_error('Error-- 班级未退出')
                    else:
                        print('班级退出成功')
                    self.home.click_tab_hw()  # 返回主界面
        else:
            Toast().find_toast(VALID_LOGIN_TOAST.login_failed())
            print("未进入主界面")
    def test_change_image(self):
        self.login_page.app_status()  # 判断APP当前状态

        if self.home.wait_check_home_page():
            self.home.click_tab_profile()  # 进入首页后点击‘个人中心’按钮

            if self.user_center.wait_check_user_center_page():  # 页面检查点
                self.user_center.click_avatar_profile()  # 点击登录头像按钮,进行个人信息操作
                if self.user_info.wait_check_page():  # 页面检查点

                    # # 获取登录后的头像截图
                    # image1 = self.user_info.image()
                    # t = self.screen_shot.screenshot(image1)
                    # self.assertTrue(t)

                    self.user_info.click_image()  # 点击头像条目,进入设置页面
                    if self.home.wait_check_tips_page():
                        self.home.tips_title()  # 弹框信息
                        self.user_info.click_album()  # 从相册选择

                        self.change_image.album_upload_cancel()  # 上传照片具体操作
                        if self.user_info.wait_check_page():  # 页面检查点
                            print('choose cancel success')
                        else:
                            print('cancel choose failure')
                            # # 获取修改后的头像截图
                            # image2 = self.user_info.image()
                            # result = self.screen_shot.same_as_screenshot(image2,t)
                            # self.assertTrue(result)

                        self.user_info.back_up()

                    else:
                        print('未进入选择相册页面')
        else:
            Toast().find_toast(VALID_LOGIN_TOAST.login_failed())
            print("未进入主界面")
    def test_star_ranking(self):
        self.login.app_status()  # 判断APP当前状态

        if self.home.wait_check_home_page():  # 页面检查点
            self.home.click_test_vanclass()  # 班级tab
            if self.van.wait_check_page():  # 页面检查点

                van = self.van.vanclass_name()  # 班级名称
                for i in range(len(van)):
                    if van[i].text == gv.VAN_LIST:
                        van[i].click()  # 进入班级详情页
                        break
                if self.van.wait_check_vanclass_page(gv.VAN_LIST):  # 页面检查点

                    self.van.star_ranking()  # 进入 星星排行榜
                    if self.detail.wait_check_star_page():  # 页面检查点
                        print('星星排行榜:')
                        self.this_week_operate()  # 本周
                        self.last_week_operate()  # 上周
                        self.this_month_operate()  # 本月
                        self.all_score_operate()  # 全部

                        self.home.click_back_up_button()
                        if self.van.wait_check_vanclass_page(
                                gv.VAN_LIST):  # 班级详情 页面检查点
                            self.home.click_back_up_button()
                            if self.van.wait_check_page():  # 班级 页面检查点
                                self.home.click_tab_hw()  # 返回主界面
                    else:
                        print('未进入 星星排行榜页面')
                        self.home.click_back_up_button()
                        if self.van.wait_check_page():  # 班级 页面检查点
                            self.home.click_tab_hw()  # 返回主界面
        else:
            Toast().find_toast(VALID_LOGIN_TOAST.login_failed())
            print("未进入主界面")
    def test_exchange_phone(self):
        if self.home.wait_check_home_page():
            self.home.click_tab_profile()  # 进入首页后点击‘个人中心’按钮

            if self.user_center.wait_check_user_center_page():  # 页面检查点
                self.user_center.click_avatar_profile()  # 点击登录头像按钮,进行个人信息操作

                for i in range(len(reset_phone_data)):
                    if self.user_info.wait_check_page():  # 页面检查点
                        phone1 = self.user_info.phone()  # 获取修改前手机号
                        self.user_info.click_phone_number()  # 点击手机号条目,进入设置页面
                        if self.home.wait_check_tips_page():
                            self.home.tips_title()
                            text = self.user_info.input()  # 验证之前密码
                            text.send_keys(reset_phone_data[0]['password'])
                            self.user_info.click_positive_button()  # 确定按钮

                            if self.phone.wait_check_page():  # 手机号 修改页面
                                phone = self.phone.et_phone()
                                phone.send_keys(reset_phone_data[i]['reset'])
                                print('修改为:', reset_phone_data[i]['reset'])

                                self.phone.count_time()  # 获取 验证码
                                if len(reset_phone_data[i]) == 3:
                                    if Toast().find_toast(reset_phone_data[i]["toast"]):
                                        print(reset_phone_data[i]["toast"])
                                    self.home.click_back_up_button()  # 返回个人信息 页面
                                else:
                                    value = verify_find(reset_phone_data[i]['reset'])  # 获取验证码
                                    if i == len(reset_phone_data)-1:
                                        self.phone.verify().send_keys('1234')
                                        self.phone.btn_certain()  # 确定按钮

                                        if Toast().find_toast('验证码验证失败'):
                                            print('验证码验证失败: 1234')

                                    self.phone.verify().send_keys(value)
                                    print('验证码:', value)
                                    self.phone.btn_certain()  # 确定按钮

                                    if self.user_info.wait_check_page():
                                        self.home.click_back_up_button()  # 数据更新需要刷新页面
                                        if self.user_center.wait_check_user_center_page():  # 页面检查点
                                            self.user_center.click_avatar_profile()  # 点击登录头像按钮,进行个人信息操作
                                            if self.user_info.wait_check_page():
                                                phone2 = self.user_info.phone()  # 获取修改后的手机号
                                                if phone1 != phone2:
                                                    print('exchange phone success')
                                                else:
                                                    print('failed to exchange phone')
                            else:
                                print('未进入修改手机号页面')
                        else:
                            print('未进入 确认密码页面')
                    else:
                        print('未进入个人信息页面')
                    print('-'*30, '\n')
                self.user_info.back_up()
        else:
            Toast().find_toast(VALID_LOGIN_TOAST.login_failed())
            print("未进入主界面")
    def test_nickname(self):
        if self.home.wait_check_home_page():
            self.home.click_tab_profile()  # 进入首页后点击‘个人中心’按钮

            if self.user_center.wait_check_user_center_page():  # 页面检查点
                self.user_center.click_avatar_profile()  # 点击登录头像按钮,进行个人信息操作
                if self.user_info.wait_check_page():  # 页面检查点

                    for i in range(len(nickname_data)):
                        if self.user_info.wait_check_page():  # 页面检查点
                            name1 = self.user_info.nickname()  # 昵称条目

                            self.user_info.click_nickname()  # 点击昵称条目,进入设置页面
                            if self.home.wait_check_tips_page():
                                self.home.tips_title()
                                nick = self.user_info.input()  # 输入框
                                nick.send_keys(
                                    r'' + nickname_data[i]['nickname'])  # 输入昵称
                                print('修改为:', nick.text)

                                if i == len(nickname_data) - 2:
                                    print('----------不保存修改----------')
                                    self.user_info.click_negative_button(
                                    )  # 取消按钮

                                    if self.user_info.wait_check_page():
                                        name2 = self.user_info.nickname(
                                        )  # 昵称条目
                                        if name2 == name1:
                                            print(
                                                'cancel change nickname success'
                                            )
                                        else:
                                            print(
                                                'cancel change nickname failed'
                                            )
                                else:
                                    if self.user_info.positive_button(
                                    ) == 'true':
                                        self.user_info.click_positive_button(
                                        )  # 确定按钮

                                        if self.user_info.wait_check_page(
                                        ):  # 页面检查点
                                            if len(nickname_data[i]) == 2:
                                                # print('toast:', Toast().find_toast(nickname_data[i]['assert']))
                                                # todo 获取toast
                                                name2 = self.user_info.nickname(
                                                )  # 昵称条目
                                                if name2 == name1:
                                                    print(
                                                        'not change nickname')
                                                else:
                                                    self.base_assert.except_error(
                                                        '❌❌❌ Error- nickname is changed'
                                                        + nickname_data[i]
                                                        ['nickname'] + ' ' +
                                                        name2)
                                            else:
                                                time.sleep(2)
                                                name2 = self.user_info.nickname(
                                                )  # 昵称条目
                                                if name2 == name1:
                                                    self.base_assert.except_error(
                                                        '❌❌❌ Error- failed change nickname'
                                                        + nickname_data[i]
                                                        ['nickname'] + ' ' +
                                                        name2)
                                        else:
                                            print('未返回个人信息页面')
                                    else:
                                        self.user_info.click_negative_button(
                                        )  # 取消按钮

                                        if self.user_info.wait_check_page(
                                        ):  # 页面检查点
                                            name2 = self.user_info.nickname(
                                            )  # 昵称条目
                                            if name2 == name1:
                                                print('not change nickname')
                                            else:
                                                self.base_assert.except_error(
                                                    '❌❌❌ Error- nickname is changed'
                                                    + nickname_data[i]
                                                    ['nickname'] + ' ' + name2)
                                        else:
                                            print('未返回个人信息页面')
                        print('-----------------------------------')
                else:
                    print('未进入个人信息页面')
                self.user_info.back_up()  # 返回
        else:
            Toast().find_toast(VALID_LOGIN_TOAST.login_failed())
            print("未进入主界面")