阳洁
2023-07-12 584a8e981c8a8de999c608fdf9f23f99b2d2d78a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
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):
        # 获取到所有选项
        time.sleep(3)
 
        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
            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