Esempio n. 1
0
class QCFillAnswerPage1(AllBasePage):
    appPackage = get_appPackage()
    '''
    遣词造句题目作答页
    '''
    qc_curr_sen_id = (By.ID, "{}:id/construction_quest_tip".format(appPackage))
    qc_CN_text_id = (By.ID, "{}:id/construction_quest_text".format(appPackage))
    qc_curr_ques_id = (By.ID,
                       "{}:id/construction_subquest_tip".format(appPackage))
    qc_answer_edit_id = (By.ID,
                         "{}:id/construction_subquest_edit".format(appPackage))
    qc_submit_id = (By.ID,
                    "{}:id/construction_quest_submit".format(appPackage))

    qc_next_ques_btn_id = (By.ID,
                           "{}:id/construction_quest_next".format(appPackage))

    qc_finish_btn_id = (By.ID,
                        "{}:id/construction_quest_sure".format(appPackage))

    def get_qc_senNum_text(self):
        return self.getText(self.find_element(*self.qc_curr_sen_id))

    def get_qc_curr_sen_nums(self):
        text = self.getText(self.find_element(*self.qc_curr_sen_id))
        text_regx = re.compile(r'.*\((\d+)\/(\d+)')
        result = text_regx.search(text).groups()
        current_num = int(result[0])
        total_num = int(result[1])
        return current_num, total_num

    def get_qc_step_text(self):
        return self.getText(self.find_element(*self.qc_curr_ques_id))

    def get_qc_current_ques_step_nums(self):
        try:
            text = self.getText(self.find_element(*self.qc_curr_ques_id))
            print("text", text)
            text_regx = re.compile(r'\((\d+)\/(\d+)\)')
            result = text_regx.search(text).groups()
            current_step = int(result[0])
            total_step = int(result[1])
            return current_step, total_step
        except:
            print("Get steps num failed")
            return None, None

    def qc_fill_answer(self, answer=None):
        qc_edit_ele = self.find_element(*self.qc_answer_edit_id)
        # qc_edit_ele.click()
        qc_edit_ele.send_keys(answer)

    def click_qc_submit_btn(self):
        self.find_element(*self.qc_submit_id).click()

    def click_qc_next_ques_btn(self):
        self.find_element(*self.qc_next_ques_btn_id).click()

    def click_qc_finish_btn(self):
        self.find_element(*self.qc_finish_btn_id).click()
class WSSingleResultPage2(WSFillAnswerPage1):
    appPackage = get_appPackage()
    '''
    单词拼写题目判定页
    '''
    EN_answer_id = (By.ID, "{}:id/fragment_word_spell_word".format(appPackage))
    audio_icon_id = (By.ID, "{}:id/fragment_word_spell_word_phsymbol".format(appPackage))
    word_CN_id = (By.ID, "{}:id/fragment_word_spell_word_translate".format(appPackage))
    ws_next_button_id = (By.ID, "{}:id/fragment_word_spell_next_tv".format(appPackage))
    test = 'com.langlib.ncee:id/fragment_word_spell_next_tv'
    ws_finish_button_id = (By.ID, "{}:id/fragment_word_spell_done_tv".format(appPackage))

    def get_ws_single_result_EN(self):
        return self.getText(self.find_element(*self.EN_answer_id))

    def get_ws_single_result_CN(self):
        return self.getText(self.find_element(*self.word_CN_id))

    def click_word_spell_single_result_audio(self):
        self.find_element(*self.audio_icon_id).click()

    def click_word_spell_next_button(self):
        # print("hhhhhhhhhhhhhh",self.test in self.page_source())
        self.find_element(*self.ws_next_button_id).click()

    def click_word_spell_finish_button(self):
        self.find_element(*self.ws_finish_button_id).click()
Esempio n. 3
0
class GFAnswerResultPage2(GFWordsListPage1):
    appPackage = get_appPackage()
    '''
    语法填空题目作答页
    '''
    answer_fill_ele_class = "android.widget.EditText"
    answer_fill_classes = (By.CLASS_NAME, "android.widget.EditText")
    to_check_answer = (By.ID, "".format(appPackage))
    submit_id = (By.ID, "{}:id/fragment_gra_fill_canto_commit_tv".format(appPackage))
    done_id = (By.ID, "{}:id/fragment_gra_fill_canto_done_tv".format(appPackage))

    '''
    语法填空答案解析页
    '''
    item_text_class = (By.CLASS_NAME, "android.widget.TextView")
    done_all_id = (By.ID, "{}:id/fragment_gra_fill_canto_done_all_tv".format(appPackage))

    def gra_fill_fill_answer(self, driver, answers, nums=10):
        fill_eles1 = self.find_elements(*self.answer_fill_classes)
        if nums <= len(fill_eles1):
            for fill, answer in zip(fill_eles1[:int(nums)], answers[:(int(nums))]):
                self.hideKeyboard()
                fill.send_keys(answer)
                self.hideKeyboard()
        if nums > len(fill_eles1):
            for fill1, answer1 in zip(fill_eles1[:(len(fill_eles1))], answers[:(len(fill_eles1))]):
                self.hideKeyboard()
                fill1.send_keys(answer1)
                self.hideKeyboard()
            x, y = driver.getSize()
            driver.swipeUp(x * 0.5, y * 0.8, 0, 200)
            fill_eles2 = self.find_elements(*self.answer_fill_classes)
            for fill2, answer2 in zip(fill_eles2[(len(fill_eles1)-10):], answers[(len(fill_eles1)-10):]):
                self.hideKeyboard()
                fill2.send_keys(answer2)
                self.hideKeyboard()

    def click_gra_fill_submit(self):
        self.find_element(*self.submit_id).click()

    def click_to_check_answer(self):
        self.find_element(*self.to_check_answer).click()

    def click_gra_fill_finish_button(self):
        self.find_element(*self.done_id).click()

    '''
    答案解析页
    '''
    def click_gra_fill_play(self):
        self.find_elements(*self.item_text_class)[0].click()

    def click_gra_fill_conv_text(self):
        self.find_elements(*self.item_text_class)[1].click()

    def click_gra_fill_conv_answer(self):
        self.find_elements(*self.item_text_class)[2].click()

    def click_gra_fill_finish_all(self):
        self.find_element(*self.done_all_id).click()
Esempio n. 4
0
class GFWordsListPage1(AllBasePage):
    appPackage = get_appPackage()
    '''
    语法填空生词表页
    '''
    gra_page_title_id = (By.ID,
                         "{}:id/title_iframe_title_tv".format(appPackage))
    # gra_list_num_id = (By.ID, "com.langlib.cee:id/fragment_gra_fill_detail_index_tv")
    gra_list_num_id = (
        By.ID,
        "{}:id/fragment_gra_fill_word_profi_index_tv".format(appPackage))

    gra_fill_next_step_id = (
        By.ID, "{}:id/fragment_gra_fill_canto_next_step_tv".format(appPackage))

    def get_gra_list_text(self):
        return self.getText(self.find_element(*self.gra_list_num_id))

    def get_gra_lists_nums(self):
        text = self.getText(self.find_element(*self.gra_list_num_id))
        text_regx = re.compile(r'.*\((\d+)\/(\d+)')
        result = text_regx.search(text).groups()
        current_num = result[0]
        total_num = result[1]
        return current_num, total_num

    def click_gra_fill_next_step(self):
        self.find_element(*self.gra_fill_next_step_id).click()
class FangxieZaojuFillAnswerPage1(AllBasePage):
    appPackage = get_appPackage()
    '''
    仿写造句题目作答页
    '''
    page_title_id = (By.ID, "{}:id/title_iframe_title_tv".format(appPackage))
    total_groups_num_id = (By.ID,
                           "{}:id/senimitation_currqinx".format(appPackage))
    fangxie_zaoju_fill_answer_id = (
        By.ID, "{}:id/senimitation_write_edit".format(appPackage))

    fangxie_zaoju_ques_id = (
        By.ID, "{}:id/senimitation_guide_questtext".format(appPackage))

    fangxie_zaoju_submit_id = (By.ID,
                               "{}:id/senimitation_submit".format(appPackage))
    fangxie_zaoju_next_step_id = (By.ID,
                                  "{}:id/senimitation_next".format(appPackage))
    fangxie_zaoju_finish_btn_id = (
        By.ID, "{}:id/senimitation_sure".format(appPackage))

    def get_fangxie_zaoju_groups_nums(self):
        text = self.getText(self.find_element(*self.total_groups_num_id))
        text_regx = re.compile(r'.*\((\d+)\/(\d+)')
        result = text_regx.search(text).groups()
        current_group = int(result[0])
        total_group = int(result[1])
        return current_group, total_group

    def get_fangxie_zaoju_step_text(self):
        return self.getText(self.find_element(*self.fangxie_zaoju_ques_id))

    def get_fangxie_zaoju_step_nums(self):
        try:
            text = self.getText(self.find_element(*self.fangxie_zaoju_ques_id))
            text_regx = re.compile(r'\((\d+)\/(\d+)\)')
            result = text_regx.search(text).groups()
            current_step = int(result[0])
            total_step = int(result[1])
            return current_step, total_step
        except:
            print("Get steps num failed")
            return None, None

    def fangxie_zaoju_fill_CN_answer(self, answer):
        ele = self.find_element(*self.fangxie_zaoju_fill_answer_id)
        ele.click()
        ele.send_keys(answer)
        self.hideKeyboard()

    def click_fangxie_zaoju_submit_btn(self):
        self.find_element(*self.fangxie_zaoju_submit_id).click()

    def click_fangxie_zaoju_next_step_btn(self):
        self.find_element(*self.fangxie_zaoju_next_step_id).click()

    def click_fangxie_zaoju_finish_btn(self):
        self.find_element(*self.fangxie_zaoju_finish_btn_id).click()
class GCChooseAnswerPage1(AllBasePage):
    appPackage = get_appPackage()
    '''
    语法单选题目作答页
    '''
    gra_page_title_id = (By.ID,
                         "{}:id/title_iframe_title_tv".format(appPackage))
    gra_choice_list_num_id = (
        By.ID, "{}:id/fragment_gra_choice_questinx".format(appPackage))
    # com.langlib.ncee:id/fragment_gra_choice_questinx
    gra_text_id = (By.ID, "{}:id/text_view".format(appPackage))

    gra_choice_answer_a_id = (
        By.ID, "{}:id/gra_choice_drag_answer_a".format(appPackage))
    gra_choice_answer_b_id = (
        By.ID, "{}:id/gra_choice_drag_answer_b".format(appPackage))
    gra_choice_answer_c_id = (
        By.ID, "{}:id/gra_choice_drag_answer_c".format(appPackage))
    gra_choice_answer_d_id = (
        By.ID, "{}:id/gra_choice_drag_answer_d".format(appPackage))
    gra_choice_i_dont_know_id = (
        By.ID, "{}:id/gra_choice_drag_answer_e".format(appPackage))

    gra_choose_sure_id = (
        By.ID, "{}:id/fragment_gra_choice_sure_tv".format(appPackage))

    def get_gra_choice_list_text(self):
        return self.getText(self.find_element(*self.gra_choice_list_num_id))

    def get_gra_choice_lists_nums(self):
        text = self.getText(self.find_element(*self.gra_choice_list_num_id))
        text_regx = re.compile(r'.*\((\d+)\/(\d+)')
        result = text_regx.search(text).groups()
        current_num = result[0]
        total_num = result[1]
        return current_num, total_num

    def gra_choice_choose_answer(self, answers):
        print("Answer.lower", answers.lower())
        try:
            if answers.lower() == 'a':
                self.find_element(*self.gra_choice_answer_a_id).click()
            if answers.lower() == 'b':
                self.find_element(*self.gra_choice_answer_b_id).click()
            if answers.lower() == 'c':
                self.find_element(*self.gra_choice_answer_c_id).click()
            if answers.lower() == 'd':
                self.find_element(*self.gra_choice_answer_d_id).click()
        except:
            self.find_element(*self.gra_choice_i_dont_know_id).click()

    def click_gra_choice_choose_sure(self):
        self.find_element(*self.gra_choose_sure_id).click()
Esempio n. 7
0
class WSFillAnswerPage1(AllBasePage):
    appPackage = get_appPackage()
    '''
    单词拼写题目作答页
    '''
    page_title_id = (By.ID, "{}:id/title_iframe_title_tv".format(appPackage))
    ws_list_num_id = (By.ID, "{}:id/fragment_word_spell_index_tv".format(appPackage))
    word_spell_CN = (By.ID, "{}:id/fragment_word_spell_detail_cn".format(appPackage))

    input_btn_class = (By.CLASS_NAME, "android.widget.EditText")

    def get_word_spell_list_text(self):
        return self.getText(self.find_element(*self.ws_list_num_id))

    def get_word_spell_list_num(self):
        text = self.getText(self.find_element(*self.ws_list_num_id))
        text_regx = re.compile(r'.*\((\d+)\/(\d+)')
        result = text_regx.search(text).groups()
        current_num = result[0]
        total_num = result[1]
        return current_num, total_num

    def get_word_spell_CN(self):
        return self.getText(self.find_element(*self.word_spell_CN))

    def fill_word_spell_answer(self, answers=None):
        try:
            try:
                self.hideKeyboard()
            except:
                pass
            self.find_element(*self.input_btn_class).send_keys(answers)
            fill_answer = []
            for ele in self.find_elements(*self.input_btn_class):
                fill_answer.append(self.getText(ele))
            print("Fill Answer:", str("".join(fill_answer).strip()))
            while str("".join(fill_answer).strip()) != str(answers):
                fill_answer1 = []
                if str("".join(fill_answer1).strip()) != str(answers):
                    for ele in self.find_elements(*self.input_btn_class):
                        ele.clear()
                    self.find_elements(*self.input_btn_class)[0].click()
                    self.find_element(*self.input_btn_class).send_keys(answers)
                    fill_answer1.clear()
                    for ele in self.find_elements(*self.input_btn_class):
                        fill_answer1.append(self.getText(ele))
                if str("".join(fill_answer1).strip()) == str(answers):
                    break
        except:
            self.find_element(*self.input_btn_class).send_keys(answers)
        self.pressKeyCode("66")
class SC75Step1Page1(AllBasePage):
    appPackage = get_appPackage()
    '''
    七选五训练Step1
    '''
    page_title_id = (By.ID, "{}:id/title_iframe_title_tv".format(appPackage))
    step1_word_list_id = (
        By.ID,
        "{}:id/fragment_word_profi_list_head_item_tv1".format(appPackage))
    next_step_btn_id = (By.ID,
                        "{}:id/sen_cloze_next_step_tv".format(appPackage))

    def get_sc_75_words_list_text(self):
        return self.getText(self.find_element(*self.step1_word_list_id))

    def click_sc_75_next_btn(self):
        self.find_element(*self.next_step_btn_id).click()
class ZXFillAnswerPage1(AllBasePage):
    appPackage = get_appPackage()
    '''
    真题写作作答页
    '''
    start_to_answer_btn_id = (
        By.ID,
        "{}:id/fragment_error_find_question_start_tv".format(appPackage))
    # com.langlib.ncee: id / fragment_error_find_question_start_tv

    zhenti_xiezuo_time_id = (
        By.ID, "{}:id/fragment_writing_detail_time".format(appPackage))
    zhenti_xiezuo_words_count_id = (
        By.ID, "{}:id/fragment_writing_detail_count".format(appPackage))
    zhenti_xiezuo_edit_id = (
        By.ID, "{}:id/fragment_writing_detail_edittext".format(appPackage))

    zhenti_xiezuo_zancun_id = (
        By.ID, "{}:id/frame_writing_bottom_btn_cache_tv".format(appPackage))
    zhenti_xiezuo_submit_id = (
        By.ID, "{}:id/frame_writing_bottom_btn_handin_tv".format(appPackage))

    def click_zhenti_xiezuo_start_to_answer_btn(self):
        self.find_element(*self.start_to_answer_btn_id).click()

    def get_zhenti_xiezuo_time(self):
        return self.getText(self.find_element(*self.zhenti_xiezuo_time_id))

    def get_zhenti_xiezuo_words_count(self):
        return self.getText(
            self.find_element(*self.zhenti_xiezuo_words_count_id))

    def fill_zhenti_xiezuo_answer(self, answer):
        ele = self.find_element(*self.zhenti_xiezuo_edit_id)
        ele.send_keys(str(answer))
        self.hideKeyboard()

    def click_zhenti_xiezuo_zancun_btn(self):
        self.find_element(*self.zhenti_xiezuo_zancun_id).click()

    def click_zhenti_xiezuo_submit_id(self):
        self.find_element(*self.zhenti_xiezuo_submit_id).click()
class GCAnswerResultPage2(GCChooseAnswerPage1):
    appPackage = get_appPackage()
    '''
    语法单选题目判定页
    '''
    answer_type_ele_id = "{}:id/gra_choice_drag_answer_type".format(appPackage)
    answer_type_id = (By.ID,
                      "{}:id/gra_choice_drag_answer_type".format(appPackage))
    gra_choice_next_button_id = (
        By.ID, "{}:id/fragment_gra_choice_next_tv".format(appPackage))
    gra_choice_words_list_button_id = (
        By.ID, "{}:id/fragment_gra_choice_word_tv".format(appPackage))

    def get_answer_type(self, driver):
        if self.answer_type_ele_id in driver.page_source():
            return self.getText(self.find_element(*self.answer_type_id))

    def click_gra_choice_next_button(self):
        self.find_element(*self.gra_choice_next_button_id).click()

    def click_gra_choice_words_list_button(self):
        self.find_element(*self.gra_choice_words_list_button_id).click()
class GraErrorFindStep1Page1(AllBasePage):
    appPackage = get_appPackage()
    '''
    短文改错
    '''
    page_title_id = (By.ID, "{}:id/title_iframe_title_tv".format(appPackage))
    gra_error_find_start_to_answer_id = (By.ID, "{}:id/fragment_error_find_question_start_tv".format(appPackage))

    error_find_text_view = (By.ID, "{}:id/text_view".format(appPackage))

    error_find_delete_id = (By.ID, "{}:id/popwindow_delete_tv".format(appPackage))
    error_find_change_id = (By.ID, "{}:id/popwindow_correction_tv".format(appPackage))
    error_find_add_id = (By.ID, "{}:id/popwindow_insert_tv".format(appPackage))

    error_find_submit_id = (By.ID, "{}:id/fragment_error_find_canto_commit_tv".format(appPackage))
    error_find_finish_id = (By.ID, "{}:id/fragment_error_find_canto_done_tv".format(appPackage))

    def click_gra_error_find_start_to_answer(self):
        self.find_element(*self.gra_error_find_start_to_answer_id).click()

    def get_error_find_x_y(self):
        ele = self.find_element(*self.error_find_text_view)
        print("Size", self.getEleSize(ele))
        width = self.getEleSize(ele).get('width')
        height = self.getEleSize(ele).get('height')
        print("Location", self.getEleLocation(ele))
        x = self.getEleLocation(ele).get('x')
        y = self.getEleLocation(ele).get('y')
        return int(width), int(y), int(height)

    def click_error_find_delete_btn(self):
        self.find_element(*self.error_find_delete_id).click()

    def click_error_find_submit_btn(self):
        self.find_element(*self.error_find_submit_id).click()

    def click_error_find_finish_btn(self):
        self.find_element(*self.error_find_finish_id).click()
Esempio n. 12
0
class WordsListsPage1(AllBasePage):
    appPackage = get_appPackage()
    '''
    词汇
    '''
    page_title_id = (By.ID, "{}:id/title_iframe_title_tv".format(appPackage))
    wl_start_ele_id = (By.ID, "{}:id/frame_word_profi_iv".format(appPackage))
    wl_star_1 = (By.ID, "{}:id/popwindow_word_profi_star1".format(appPackage))
    wl_star_2 = (By.ID, "{}:id/popwindow_word_profi_star2".format(appPackage))
    wl_star_3 = (By.ID, "{}:id/popwindow_word_profi_star3".format(appPackage))

    def get_wl_all_star_eles(self):
        eles = self.find_elements(*self.wl_start_ele_id)
        return eles

    def click_wl_start1_btn(self):
        self.find_element(*self.wl_star_1).click()

    def click_wl_start2_btn(self):
        self.find_element(*self.wl_star_2).click()

    def click_wl_start3_btn(self):
        self.find_element(*self.wl_star_3).click()
class SAAnswerResultPage2(STFillAnswer1):
    appPackage = get_appPackage()
    '''
    段落训练第三步:句子分析
    '''
    sect_train_step3_lists_nums_id = (
        By.ID, "{}:id/quest_analysis_step".format(appPackage))
    answer_radio_button_classes = (By.CLASS_NAME, "android.widget.RadioButton")
    sect_train_step3_sure_btn_id = (
        By.ID, "{}:id/fragment_section_train_sure".format(appPackage))
    sect_train_next_question_id = (
        By.ID, '{}:id/fragment_section_train_nextquest'.format(appPackage))
    sect_train_step3_mask_answer_id = (
        By.ID, "{}:id/sen_analysis_mask_answer".format(appPackage))
    fill_CN_answer_classes = (By.CLASS_NAME, 'android.widget.EditText')
    sect_train_finish_button_id = (
        By.ID, "{}:id/fragment_section_train_done".format(appPackage))

    #临时
    check_result_id = (
        By.ID, "{}:id/fragment_section_train_result".format(appPackage))

    def return_sect_train_step3_ques_ele(self):
        return self.find_element(*self.sect_train_step3_lists_nums_id)

    def get_sect_train_step3_lists_nums(self):
        text = self.getText(
            self.find_element(*self.sect_train_step3_lists_nums_id))
        text_regx = re.compile(r'.*\((\d+)\/(\d+)')
        result = text_regx.search(text).groups()
        current_num = int(result[0])
        total_num = int(result[1])
        return current_num, total_num

    def sect_train_step3_choose_answer(self, answer=None, right=True):
        x, y = self.getSize()
        self.swipeUp(x * 0.5, y * 0.8, 0, 200)
        sleep(5)
        answers_ele = self.find_elements(*self.answer_radio_button_classes)
        all_answer_CN = []
        for a in answers_ele:
            all_answer_CN.append(self.getText(a))
            if right:
                if self.getText(a) == answer:
                    a.click()
            else:
                if self.getText(a) != answer:
                    a.click()
        print("All_answer_CN", all_answer_CN)
        if answer not in all_answer_CN:
            print("正确答案不存在")
            self.save_screen_shot("正确答案不存在", file_name="句子分析不存在正确答案")
            sleep(180)
            for a in answers_ele:
                if self.getText(a) != answer:
                    a.click()

    def click_sect_train_step3_sure_btn(self):
        self.find_element(*self.sect_train_step3_sure_btn_id).click()

    def click_sect_train_step3_next_ques_btn(self):
        self.find_element(*self.sect_train_next_question_id).click()

    def click_sect_train_mask_CN(self):
        self.find_element(*self.sect_train_step3_mask_answer_id).click()

    def sect_train_step3_fill_CN_answer(self, answer):
        print("Answer", answer, str(answer))
        ele = self.find_element(*self.fill_CN_answer_classes)
        ele.click()
        ele.send_keys(str(answer))
        text = self.getText(ele)
        print(text, text != str(answer))
        while text != str(answer):
            ele.clear()
            ele.ele.send_keys(str(answer))
            text = self.getText(ele)
            if text == str(answer):
                break

    def click_sect_train_step3_finish_button(self):
        self.find_element(*self.sect_train_finish_button_id).click()

    def click_sect_train_step3_check_result_btn(self):
        self.find_element(*self.check_result_id).click()
Esempio n. 14
0
class All_ResultPage(BasePage):
    appPackage = get_appPackage()
    '''
    最后一题,底部按钮为生词表
    '''
    word_list_button_id = (
        By.ID, "{}:id/fragment_short_conv_answer_word_tv".format(appPackage))
    '''
    生词表页,底部按钮为完成
    '''
    word_profi_done_id = (
        By.ID, "{}:id/fragment_word_profi_done_tv".format(appPackage))
    """
    结果展示页
    """
    time_id = (By.ID, "{}:id/fragment_list_top_view_time".format(appPackage))
    grade_id = (By.ID, "{}:id/fragment_list_top_view_grade".format(appPackage))

    answer_lists_index_ids = (
        By.ID, "{}:id/fragment_sen_fill_list_item_index".format(appPackage))
    # com.langlib.cee: id / fragment_sen_fill_list_item_index
    words_lists_icon = (
        By.ID, "{}:id/fragment_sen_fill_list_glossary_tv".format(appPackage))
    learn_center_class = (By.CLASS_NAME, "android.widget.TextView")

    learn_card_ele_id = "{}:id/view_punch_clock_punch_btn".format(appPackage)
    learn_card_id = (By.ID,
                     "{}:id/view_punch_clock_punch_btn".format(appPackage))
    learn_card_close_id = (By.ID,
                           "{}:id/view_punch_clock_close".format(appPackage))
    '''
    最后一题,底部按钮为生词表
    '''
    def click_words_list_button(self):
        self.find_element(*self.word_list_button_id).click()

    '''
    生词表页,底部按钮为完成
    '''

    def click_word_finish_button(self):
        self.find_element(*self.word_profi_done_id).click()

    """
    结果展示页
    """

    def get_time(self):
        return self.getText(self.find_element(*self.time_id))

    def get_grade(self):
        return self.getText(self.find_element(*self.grade_id))

    def get_item_lists_index(self):
        eles = self.find_elements(*self.answer_lists_index_ids)
        return eles

    def click_result_num_index(self, ele):
        ele.click()

    def click_word_icon(self):
        self.find_element(*self.words_lists_icon).click()

    def click_learn_center(self):
        self.find_element(*self.learn_center_class).click()

    def click_learn_card_btn(self):
        if self.learn_card_ele_id in self.page_source():
            self.find_element(*self.learn_card_id).click()
        else:
            pass

    def click_learn_card_close_btn(self):
        print('"学习打卡" in self.page_source()', "学习打卡" in self.page_source())
        if "学习打卡" in self.page_source():
            self.find_element(*self.learn_card_close_id).click()
            return 1
        else:
            return 0

    def click_learn_card_task_btn(self):
        from time import sleep
        print('"学习打卡" in self.page_source()', "学习打卡" in self.page_source())
        self.find_element(*self.learn_card_id).click()
        sleep(2)
Esempio n. 15
0
class LC_Step1_Page(AllBasePage):
    appPackage = get_appPackage()
    '''
    长对话第一步选择关键词
    '''
    page_title_id = (By.ID, "{}:id/title_iframe_title_tv".format(appPackage))
    list_num_id = (By.ID, "{}:id/fragment_word_dic_index_tv".format(appPackage))

    step_desc = (By.ID, "{}:id/fragment_short_conv_step_des".format(appPackage))
    question_num_ids = (By.ID, "{}:id/conversation_question_no".format(appPackage))

    answer_a_ids = (By.ID, "{}:id/option_a".format(appPackage))
    answer_b_ids = (By.ID, "{}:id/option_b".format(appPackage))
    answer_c_ids = (By.ID, "{}:id/option_c".format(appPackage))

    long_conv_sure_id = (By.ID, "{}:id/fragment_short_conv_sure_tv".format(appPackage))
    long_conv_next_id = (By.ID, "{}:id/fragment_short_conv_next_tv".format(appPackage))

    def get_long_conv_step_desc(self):
        return self.getText(self.find_element(*self.step_desc))

    def get_long_conv_curr_step(self):
        return self.getText(self.find_element(*self.step_desc)).split(":")[0]

    def get_long_conv_list_text(self):
        return self.getText(self.find_element(*self.list_num_id))

    def get_long_conv_lists_nums(self):
        text = self.getText(self.find_element(*self.list_num_id))
        text_regx = re.compile(r'.*\((\d+)\/(\d+)')
        result = text_regx.search(text).groups()
        current_num = result[0]
        total_num = result[1]
        return current_num, total_num

    def find_all_long_conv_mark_eles(self):
        words_eles = self.find_elements(*self.question_num_ids)
        return words_eles

    def long_conv_step1_mark_words(self, word_ele, num=1):
        num = int(num)
        # word_ele.click()
        for i in range(1, 3):
            self.find_elements(*self.answer_a_ids)[i - 1].click()
            self.find_elements(*self.answer_b_ids)[i - 1].click()
            self.find_elements(*self.answer_c_ids)[i - 1].click()
        x, y = self.getSize()
        self.swipeUp(x * 0.8, y * 0.8, 0, 200)
        if num == 4:
            for j in range(-2,0):
                self.find_elements(*self.answer_a_ids)[j].click()
                self.find_elements(*self.answer_b_ids)[j].click()
                self.find_elements(*self.answer_c_ids)[j].click()
        if num == 3:
            self.find_elements(*self.answer_a_ids)[-1].click()
            self.find_elements(*self.answer_b_ids)[-1].click()
            self.find_elements(*self.answer_c_ids)[-1].click()



    def click_long_conv_step1_sure(self):
        self.find_element(*self.long_conv_sure_id).click()

    def click_long_conv_step1_next(self):
        self.find_element(*self.long_conv_next_id).click()
class STFillAnswer1(AllBasePage):
    appPackage = get_appPackage()
    '''
    段落训练第一步
    '''
    sect_train_page_title_id = (By.ID, "{}:id/title_iframe_title_tv".format(appPackage))
    sect_train_total_list_num_id = (By.ID, "{}:id/fragment_section_train_child_tip".format(appPackage))
    sect_train_text_id = (By.ID, '{}:id/fragment_section_train_word_child_questtext'.format(appPackage))
    sect_train_step2_sure_btn_id = (By.ID, "{}:id/fragment_section_train_sure".format(appPackage))
    sect_train_next_button_id = (By.ID, "{}:id/fragment_section_train_nexttv".format(appPackage))

    '''
    段落训练第二步:段落主旨句
    '''
    ques_desc_id = (By.ID, '{}:id/quest_section_part_tip'.format(appPackage))
    answer_edit_text_id = (By.ID, "{}:id/quest_section_part_ed".format(appPackage))
    sect_train_sure_button_id = (By.ID, "{}:id/fragment_section_train_sure".format(appPackage))
    sect_train_step2_next_btn_id = (By.ID, "{}:id/fragment_section_train_nexttv".format(appPackage))
    '''
    第一步元素操作步骤
    '''

    def get_sect_train_list_text(self):
        return self.getText(self.find_element(*self.sect_train_total_list_num_id))

    def get_sect_train_text_text(self):
        return self.getText(self.find_element(*self.sect_train_text_id))

    def get_sect_train_edit_text(self):
        return self.getText(self.find_element(*self.answer_edit_text_id))

    def click_sect_train_step1_next_button(self):
        self.find_element(*self.sect_train_next_button_id).click()
        # self.find_element(*self.sect_train_step2_next_btn_id).click()


    '''
    段落训练:第二步段落主旨句元素操作步骤
    '''
    def get_ques_desc_text(self):
        return self.getText(self.find_element(*self.ques_desc_id)).split(':')[0]

    def sect_train_step2_fill_answer(self, answer):
        ele = self.find_element(*self.answer_edit_text_id)
        ele.send_keys(answer)
        text = self.getText(ele)
        times = 0
        while text != str(answer):
            ele.clear()
            ele.send_keys(str(answer))
            text = self.getText(ele)
            times += 1
            if text == str(answer):
                break
            if times > 3:
                break


    def click_sect_train_step2_sure_button(self):
        self.find_element(*self.sect_train_step2_sure_btn_id).click()

    def click_sect_train_step2_next_btn(self):
        self.find_element(*self.sect_train_step2_next_btn_id).click()
Esempio n. 17
0
class ZXResultAnswerPage(ZXFillAnswerPage1):
    appPackage = get_appPackage()
    '''
    真题写作结果页
    '''
    pass
class LC_Step2_Page(LC_Step1_Page):
    appPackage = get_appPackage()
    '''
    长对话训练第二步做题步骤
    '''
    audio_icon_id = (By.ID,
                     "{}:id/frame_audio_conv_imageview".format(appPackage))
    current_time_id = (
        By.ID, "{}:id/frame_audio_conv_current_time".format(appPackage))
    total_time_id = (By.ID,
                     "{}:id/frame_audio_conv_total_time".format(appPackage))

    question_num_ids = (By.ID,
                        "{}:id/conversation_question_no".format(appPackage))
    question_items_ids = (By.ID,
                          "{}:id/conversation_question".format(appPackage))
    long_conv_answer_a_id = (By.ID, "{}:id/option_a_no".format(appPackage))
    long_conv_answer_b_id = (By.ID, "{}:id/option_b_no".format(appPackage))
    long_conv_answer_c_id = (By.ID, "{}:id/option_c_no".format(appPackage))
    long_conv_answer_c_items = (By.ID, "{}:id/option_c_no".format(appPackage))

    item_text_class = (By.CLASS_NAME, "android.widget.TextView")
    long_conv_done_id = (
        By.ID, "{}:id/fragment_short_conv_done_tv".format(appPackage))
    long_conv_answer_words_list_id = (
        By.ID, "{}:id/fragment_short_conv_answer_word_tv".format(appPackage))

    long_conv_words_List_finish_btn_id = (
        By.ID, "{}:id/fragment_word_profi_done_tv".format(appPackage))

    def click_long_conv_audio_icon(self):
        self.find_element(*self.audio_icon_id).click()

    def get_long_conv_audio_current_time(self):
        current_time = self.getText(self.find_element(*self.current_time_id))
        print("Current_time", current_time)
        return current_time

    def get_long_conv_audio_total_time(self):
        total_time = self.getText(self.find_element(*self.total_time_id))
        print("Total time", total_time)
        return total_time

    def check_long_conv_audio_play_result(self, curr, total):
        return True if curr == total else False

    def find_all_long_conv_c_items(self):
        eles = self.find_elements(*self.long_conv_answer_c_items)
        print("ELES", eles)
        return eles

    def find_all_long_conv_choose_question_no(self):
        question_ele = self.find_elements(*self.question_num_ids)
        print("Q ELEs", question_ele)
        return question_ele

    def get_long_conv_question_num(self, ele):
        question_num = str(self.getText(ele)).split('.')[0]
        return int(question_num)

    def choose_long_conv_step2_answer(self, num, answer, c=0):
        print("Answer", answer, "Num", num)
        if answer.upper() == 'A':
            print("Choose A", num, c)
            # print(self.find_elements(*self.long_conv_answer_a_id)[num - 1])
            # print(self.find_elements(*self.long_conv_answer_a_id))
            # self.find_elements(*self.long_conv_answer_a_id)[num - 1].click()
            if c:
                print(
                    '"4." in self.page_source() or "3." in self.page_source()',
                    "4." in self.page_source() or "3." in self.page_source())
                if ("4." in self.page_source()
                        or "3." in self.page_source()) and num == 0:
                    self.find_elements(*self.long_conv_answer_b_id)[0].click()
                if num == 1:
                    self.find_elements(*self.long_conv_answer_a_id)[1].click()
                if num == 2:
                    try:
                        self.find_elements(
                            *self.long_conv_answer_b_id)[2].click()
                    except:
                        self.find_elements(
                            *self.long_conv_answer_b_id)[1].click()
            else:
                if c == 4:
                    self.find_elements(*self.long_conv_answer_a_id)[num -
                                                                    2].click()
                else:
                    try:
                        self.find_elements(
                            *self.long_conv_answer_a_id)[num - 1].click()
                    except:
                        self.find_elements(
                            *self.long_conv_answer_a_id)[num - 2].click()
        if answer.upper() == 'B':
            print("Choose B", num, c)
            # print(self.find_elements(*self.long_conv_answer_a_id)[num - 1])
            # print(self.find_elements(*self.long_conv_answer_b_id))
            # self.find_elements(*self.long_conv_answer_b_id)[num - 1].click()
            if c:
                print(
                    '"4." in self.page_source() or "3." in self.page_source()',
                    "4." in self.page_source() or "3." in self.page_source())
                if ("4." in self.page_source()
                        or "3." in self.page_source()) and num == 0:
                    self.find_elements(*self.long_conv_answer_b_id)[0].click()
                if num == 1:
                    self.find_elements(*self.long_conv_answer_b_id)[1].click()
                if num == 2:
                    try:
                        self.find_elements(
                            *self.long_conv_answer_b_id)[2].click()
                    except:
                        self.find_elements(
                            *self.long_conv_answer_b_id)[1].click()
            else:
                if c == 4:
                    self.find_elements(*self.long_conv_answer_b_id)[num -
                                                                    2].click()
                else:
                    try:
                        self.find_elements(
                            *self.long_conv_answer_b_id)[num - 1].click()
                    except:
                        try:
                            self.find_elements(
                                *self.long_conv_answer_b_id)[num - 2].click()
                        except:
                            pass

        if answer.upper() == 'C':
            print("Choose C", num, "CCCCCCCCCCCCCcc", c)
            print(self.find_elements(*self.long_conv_answer_b_id))
            # print("len(se", len(self.find_elements(*self.long_conv_answer_c_id)))
            if c:
                if num == 1:
                    self.find_elements(*self.long_conv_answer_c_id)[1].click()
                if num == 2:
                    try:
                        self.find_elements(
                            *self.long_conv_answer_b_id)[2].click()
                    except:
                        self.find_elements(
                            *self.long_conv_answer_b_id)[1].click()
            else:
                if c == 4:
                    self.find_elements(*self.long_conv_answer_c_id)[num -
                                                                    2].click()
                else:
                    try:
                        self.find_elements(
                            *self.long_conv_answer_b_id)[num - 1].click()
                    except:
                        try:
                            self.find_elements(
                                *self.long_conv_answer_b_id)[num - 2].click()
                        except:
                            pass

        # except:
        #     print("第二步第三题第四题挡住了")
        # x, y = self.getSize()
        # # self, x, y1, y2, t=500
        # self.swipeUp(x * 0.8, y * 0.8, 0, 200)
        # if answer.upper() == 'A':
        #     self.find_elements(*self.answer_a_id)[num - 1].click()
        # if answer.upper() == 'B':
        #     self.find_elements(*self.answer_b_id)[num - 1].click()
        # if answer.upper() == 'C':
        #     self.find_elements(*self.answer_c_id)[num - 1].click()

    def click_long_conv_step2_sure(self):
        self.find_element(*self.long_conv_done_id).click()

    '''
    第二步结果页
    '''

    def click_long_conv_play_text(self):
        self.find_elements(*self.item_text_class)[0].click()

    def click_long_conv_conv_text(self):
        self.find_elements(*self.item_text_class)[1].click()

    def click_long_conv_conv_answer(self):
        self.find_elements(*self.item_text_class)[2].click()

    def click_long_conv_step2_words_list(self):
        self.find_element(*self.long_conv_answer_words_list_id).click()

    def click_long_conv_words_list_finish_btn(self):
        self.find_element(*self.long_conv_words_List_finish_btn_id).click()
Esempio n. 19
0
class STAllAnswerPage(SAAnswerResultPage2):
    appPackage = get_appPackage()
    sen_index_classes = (By.CLASS_NAME, '{}:id/recy_item'.format(appPackage))

    def click_sen_index_num(self):
        self.find_element(*self.sen_index_classes).click()
class StudyCenter(ProdPage):
    appPackage = get_appPackage()
    '''
    学习中心页面元素
    '''
    '''
    课程名称及切换
    '''
    course_name_id = (By.ID,
                      "{}:id/fragment_course_task_name".format(appPackage))
    course_list_close_id = (
        By.ID, "{}:id/dialog_class_view_close_btn".format(appPackage))
    course_lists_ids = (By.ID,
                        "{}:id/fragment_class_item_rl".format(appPackage))
    pre_for_test_id = (By.ID,
                       "{}:id/fragment_class_item_type_tv".format(appPackage))
    '''
    备考倒计时
    '''
    exam_days_id = (By.ID, "{}:id/view_exam_count_down".format(appPackage))
    '''
    学习报告,测评历史,打卡记录
    '''
    study_report_id = (
        By.ID, "{}:id/view_learing_center_study_report_rl".format(appPackage))
    test_history_id = (
        By.ID,
        "{}:id/view_learing_center_mearsure_history_rl".format(appPackage))
    card_record_id = (
        By.ID, "{}:id/view_learing_center_card_record_rl".format(appPackage))
    '''
    任务数及总任务数
    '''
    task_index_lists_id = (
        By.ID, "{}:id/fragment_course_task_index".format(appPackage))
    task_all_lists_close_btn_id = (
        By.ID, "{}:id/dialog_class_view_close_btn".format(appPackage))
    task_all_lists_ids = (By.ID,
                          "{}:id/fragment_exercise_item_tv".format(appPackage))
    '''
    我的练习,查看更多
    '''
    # my_ex_id = (By.ID, '{}:id/view_course_task_my_exercise_tv'.format(appPackage))
    my_ex_id = (By.ID,
                "{}:id/view_course_task_my_course_tv".format(appPackage))
    # com.langlib.ncee: id / view_course_task_my_course_tv
    check_more_id = (
        By.ID, "{}:id/view_course_task_my_exercise_more_tv".format(appPackage))
    '''
    任务列表
    '''
    exercise_list_ids = (By.ID,
                         "{}:id/exercise_list_item_tv".format(appPackage))
    '''
    学习中心页动作
    '''
    def return_learning_center_page_source(self):
        return self.page_source

    def click_course_name(self):
        self.find_element(*self.course_name_id).click()

    def click_course_list_close(self):
        self.find_element(*self.course_list_close_id).click()

    def click_fir_to_learn(self):
        self.find_elements(*self.course_lists_ids)[0].click()

    def click_sec_to_learn(self):
        self.find_elements(*self.course_lists_ids)[1].click()

    def click_thi_to_learn(self):
        self.find_elements(*self.course_lists_ids)[2].click()

    def click_study_report(self):
        self.find_element(*self.study_report_id).click()

    def click_test_history(self):
        self.find_element(*self.test_history_id).click()

    def click_card_record(self):
        self.find_element(*self.card_record_id).click()

    def click_task_index(self):
        self.find_element(*self.task_index_lists_id).click()

    def get_current_total_task(self):
        return self.getText(self.find_element(*self.task_index_lists_id))

    def click_task_view_close(self):
        self.find_element(*self.task_all_lists_close_btn_id).click()

    def click_task_all_lists_index(self, index):
        self.find_elements(*self.task_all_lists_ids)[int(index) - 1].click()

    def click_my_exc_check_more(self):
        self.find_element(*self.check_more_id).click()

    def return_all_test_ele(self):
        # exercies = []
        eles = self.find_elements(*self.exercise_list_ids)
        # for ele in eles:
        #     exercies.append(self.getText(ele))
        return eles

    def get_my_ex_loc(self):
        ele = self.find_element(*self.my_ex_id)
        # print(self.getEleSize(ele))
        # print(self.getEleLocation(ele))
        x = self.getEleLocation(ele).get('x')
        y = self.getEleLocation(ele).get('y')
        # print(x, y)
        # w,h = self.getEleLocation(ele)
        # print(x, y, w, h)
        return int(x), int(y)
class CTWordsListPage1(AllBasePage):
    appPackage = get_appPackage()
    '''
    完型训练第一步:
    '''
    cloze_test_step1_words_list_id = (
        By.ID,
        "{}:id/fragment_word_profi_list_head_item_tv1".format(appPackage))
    cloze_test_step1_next_btn_id = (
        By.ID,
        "{}:id/fragment_cloze_test_detail_next_step_tv".format(appPackage))
    '''
    完型训练第二步:
    '''
    cloze_test_ques_num_id = (
        By.ID,
        '{}:id/fragment_cloze_test_detail_item_index_tv'.format(appPackage))
    cloze_test_part1_title_id = (
        By.ID,
        "{}:id/fragment_cloze_test_detail_item_index_1_tv".format(appPackage))
    cloze_test_part1_items_ids = (
        By.ID, "{}:id/fragment_cloze_test_detail_item_tv".format(appPackage))

    cloze_test_part2_title_id = (
        By.ID,
        "{}:id/fragment_cloze_test_detail_item_index_2_tv".format(appPackage))
    cloze_test_part2_items_a_id = (
        By.ID,
        "{}:id/fragment_cloze_test_detail_item_rbn_a".format(appPackage))
    cloze_test_part2_items_b_id = (
        By.ID,
        "{}:id/fragment_cloze_test_detail_item_rbn_b".format(appPackage))
    cloze_test_part2_items_c_id = (
        By.ID,
        "{}:id/fragment_cloze_test_detail_item_rbn_c".format(appPackage))
    cloze_test_part2_items_d_id = (
        By.ID,
        "{}:id/fragment_cloze_test_detail_item_rbn_d".format(appPackage))

    cloze_test_part2_next_btn_id = (
        By.ID,
        "{}:id/fragment_cloze_test_detail_next_quest_tv".format(appPackage))
    cloze_test_finish_btn_id = (
        By.ID, "{}:id/fragment_cloze_test_detail_done_tv".format(appPackage))

    def click_cloze_test_step1_next_btn(self):
        self.find_element(*self.cloze_test_step1_next_btn_id).click()

    def get_cloze_test_curr_ques(self):
        # self.getText(self.find_element(*self.step1_word_list_id))
        # print(self.getText(self.find_element(*self.cloze_test_ques_num_id)))
        curr_num = int(
            self.getText(
                self.find_element(*self.cloze_test_ques_num_id)).strip("."))
        return curr_num

    def click_cloze_test_part1_answer(self, answer=None):
        eles = self.find_elements(*self.cloze_test_part1_items_ids)
        if answer:
            for ele in eles:
                if answer in self.getText(ele):
                    ele.click()
                    break
        else:
            eles[0].click()

    def cloze_test_choose_answer(self, answers=None):
        x, y = self.getSize()
        self.swipeUp(x * 0.5, y * 0.8, 0, 100)
        sleep(5)
        if answers.lower() == 'a':
            self.find_element(*self.cloze_test_part2_items_a_id).click()
        if answers.lower() == 'b':
            self.find_element(*self.cloze_test_part2_items_b_id).click()
        if answers.lower() == 'c':
            self.find_element(*self.cloze_test_part2_items_c_id).click()
        if answers.lower() == 'd':
            self.find_element(*self.cloze_test_part2_items_d_id).click()

    def click_cloze_test_step2_next_btn(self):
        self.find_element(*self.cloze_test_part2_next_btn_id).click()

    def click_cloze_test_finish_btn(self):
        self.find_element(*self.cloze_test_finish_btn_id).click()
class SC75Step2Page(SC75Step1Page1):
    appPackage = get_appPackage()
    '''
    七选五训练Step2
    '''
    sc_75_text_view_id = (By.ID,
                          "com.langlib.ncee:id/text_view".format(appPackage))

    sc_75_answers_id = (
        By.ID,
        "{}:id/fragment_sen_cloze_vp_detail_viewpager".format(appPackage))
    sc_75_fill_answer_classes = (By.CLASS_NAME, "android.widget.TextView")

    sc_75_submit_id = (By.ID,
                       "{}:id/sen_cloze_commit_in_tv".format(appPackage))

    sc_75_yeqian_claess = (By.CLASS_NAME, "android.widget.TextView")

    sc_75_finish_id = (By.ID, "{}:id/sen_cloze_done_tv".format(appPackage))

    def sc_75_swipe_answers_down(self):
        ele = self.find_element(*self.sc_75_answers_id)
        print("Size", self.getEleSize(ele))
        width = self.getEleSize(ele).get('width')
        height = self.getEleSize(ele).get('height')
        print("Location", self.getEleLocation(ele))
        x = self.getEleLocation(ele).get('x')
        y = self.getEleLocation(ele).get('y')
        print("int(width * 0.5), y - 35, y + height", int(width * 0.5), y - 25,
              y + height)
        try:
            self.swipeDown(int(width * 0.5), y - 80, y + height, 100)
            # self.swipeDown(int(width * 0.5), y - 25, y + height, 200)
            self.swipeDown(int(width * 0.5), 919, y + height, 300)
            self.swipeDown(int(width * 0.5), 915, y + height, 200)
        except:
            self.swipeDown(725, 959, y + height, 300)
        finally:
            self.swipeDown(718, y - 75, y + height, 500)

    # def sc_75_choose_answer(self, answer):
    #     answer = answer.lower()
    #     for item in range(97, 107):
    #         if answer == chr(item):
    #             self.find_element(*(By.ID, "{}:id/popwindow_option_{}_tv".format(self.appPackage, answer))).click()
    # def sc_75_choose_answer2(self, answers):
    # print("SC75----2")
    # ele = self.find_element(*self.sc_75_text_view_id)
    # print("Size", self.getEleSize(ele))
    # width = self.getEleSize(ele).get('width')
    # height = self.getEleSize(ele).get('height')
    # print("Location", self.getEleLocation(ele))
    # x = self.getEleLocation(ele).get('x')
    # y = self.getEleLocation(ele).get('y')
    # print("===============>w,h", width, height)
    # print('x,y', x, y)
    # while True:
    #     print("SC 75 2 True")
    #     self.swipeUp(x, (y + height - 10), y, 10)
    #     input_ele = "android.widget.TextView"
    #     if input_ele in self.page_source():
    #         pass

    def sc_75_choose_answer(self, answers, nums=5):
        ele = self.find_element(*self.sc_75_answers_id)
        print("Size", self.getEleSize(ele))
        width = self.getEleSize(ele).get('width')
        height = self.getEleSize(ele).get('height')
        print("Location", self.getEleLocation(ele))
        x = self.getEleLocation(ele).get('x')
        y = self.getEleLocation(ele).get('y')
        fill_eles1 = []
        all_fill_eles1 = self.find_elements(*self.sc_75_fill_answer_classes)
        for ele_text in all_fill_eles1:
            if not self.getText(ele_text):
                fill_eles1.append(ele_text)
        print("Answers", answers)
        print("空的数量", nums, len(fill_eles1))
        if nums <= len(fill_eles1):
            for fill, answer in zip(fill_eles1[:int(nums)],
                                    answers[:(int(nums))]):
                fill.click()
                answer = answer.lower()
                for item in range(97, 104):
                    if answer == chr(item):
                        answer_id_ele = (By.ID,
                                         "{}:id/popwindow_option_{}_tv".format(
                                             self.appPackage, answer))
                        self.find_element(*answer_id_ele).click()
        if nums > len(fill_eles1):
            for fill1, answer1 in zip(fill_eles1[:(len(fill_eles1))],
                                      answers[:(len(fill_eles1))]):
                fill1.click()
                answer1 = answer1.lower()
                for item in range(97, 104):
                    if answer1 == chr(item):
                        answer_id_ele = (By.ID,
                                         "{}:id/popwindow_option_{}_tv".format(
                                             self.appPackage, answer1))
                        self.find_element(*answer_id_ele).click()
            sleep(5)
            ele3 = self.find_element(*self.sc_75_answers_id)
            print("Size", self.getEleSize(ele3))
            width3 = self.getEleSize(ele3).get('width')
            height3 = self.getEleSize(ele3).get('height')
            print("Location", self.getEleLocation(ele3))
            x3 = self.getEleLocation(ele3).get('x')
            y3 = self.getEleLocation(ele3).get('y')
            # self.driver.swipe(x, y1, x, y2, t)
            self.swipeUp(width3 * 0.4, y3 - 30, 0, 200)

            fill_eles2 = []
            all_fill_eles2 = self.find_elements(
                *self.sc_75_fill_answer_classes)
            for ele_text2 in all_fill_eles2:
                if not self.getText(ele_text2):
                    fill_eles2.append(ele_text2)
            for fill2, answer2 in zip(fill_eles2[(len(fill_eles1) - 5):],
                                      answers[(len(fill_eles1) - 5):]):
                fill2.click()
                answer2 = answer2.lower()
                for item in range(97, 104):
                    if answer2 == chr(item):
                        answer_id_ele = (By.ID,
                                         "{}:id/popwindow_option_{}_tv".format(
                                             self.appPackage, answer2))
                        self.find_element(*answer_id_ele).click()

    def click_sc_75_submit_btn(self):
        self.find_element(*self.sc_75_submit_id).click()

    def click_sc_75_finish_btn(self):
        self.find_element(*self.sc_75_finish_id).click()

    def click_sc_75_play(self):
        self.find_elements(*self.sc_75_yeqian_claess)[1].click()

    def click_sc_75_answer_ana(self):
        self.find_elements(*self.sc_75_yeqian_claess)[2].click()

    def click_sc_75_cont(self):
        self.find_elements(*self.sc_75_yeqian_claess)[3].click()