import random from base.base_page import BasePage from elements.answer_elements import AnswerElements as Answer import time class AnswerPage(BasePage): """ 答题页面 """ loading_count = 0 def answer_MAQ(self): # 暂停3秒 time.sleep(3) try: # 获取标题 self.get_element_wait(Answer.title) except: # 标题不存在直接失败 return False while True: # 判断是否一直存在加载框 if self.loadin_text(): return try: # 点击继续测试按钮 self.click(Answer.continue_testing_btn) except: pass try: # 获取到所有选项 options = self.get_elements(Answer.options) if len(options) < 6: continue number = random.randint(0, 5) options[number].click() except: pass try: # 点击提交按钮 self.click(Answer.submit_btn) except: pass try: # 数据上传完成 self.get_element(Answer.upload_success_title) return True except: pass def loadin_text(self): """ 判断加载框加载,如果加载超过10秒直接退出当前测试 :return: """ i = 0 while i < 10: try: self.get_element(Answer.loading_text) i += 1 time.sleep(1) except: return False else: return True