From 3b84cce1ee43215b9f398148fda19f4b1025856b Mon Sep 17 00:00:00 2001
From: yj <2077506045@qq.com>
Date: 星期三, 24 七月 2024 17:46:00 +0800
Subject: [PATCH] 测评系统自动测试

---
 po/jaq_answer_page.py |   62 ++++++++++++++----------------
 1 files changed, 29 insertions(+), 33 deletions(-)

diff --git a/po/jaq_answer_page.py b/po/jaq_answer_page.py
index 930a3b9..0d48549 100644
--- a/po/jaq_answer_page.py
+++ b/po/jaq_answer_page.py
@@ -1,10 +1,11 @@
 import random
 
 from base.base_page import BasePage
-from elements.jaq_answer_elements import JAQAnswerElements as Answer
+from elements.jaq_answer_elements import JAQAnswerElements
 from selenium.common.exceptions import *
 
 import time
+import re
 
 
 class JAQAnswerPage(BasePage):
@@ -13,38 +14,33 @@
     """
     loading_count = 0
 
+    elements = JAQAnswerElements
+
     def answer(self):
         # 鏆傚仠3绉�
         time.sleep(3)
-        while True:
-            # 鏍囬涓嶅瓨鍦ㄧ洿鎺ヨ繑鍥濬alse
-            if not self.title_is_display():
-                return False
-
-            try:
-                # 鑾峰彇鍒版墍鏈塧閫夐」
-                options_a = self.get_eles(Answer.options_a)
-                if len(options_a) < 5:
-                    continue
-                number_a = random.randint(0, 4)
+        # 鑾峰彇鍒伴鐩�
+        title = self.get_ele(self.elements.q_title, 5)
+        # 鎴彇宸茬瓟鏁伴噺涓庢�绘暟閲�
+        match = re.search(r"(\d+)棰�/鎬�(\d+)", title.text)
+        current = int(match.group(1))
+        total = int(match.group(2))
+        while current <= total:
+            print(f"鐜板湪鏄疛AQ绗瑊current}棰�")
+            # 鑾峰彇鍒版墍鏈夐�夐」
+            options_a = self.get_eles(self.elements.options_a, 5)
+            options_b = self.get_eles(self.elements.options_b, 5)
+            number_a = random.randint(0, 4)
+            number_b = random.randint(0, 3)
+            if options_a[number_a].is_enabled() and options_b[number_b].is_enabled():
                 options_a[number_a].click()
-
-                # 鑾峰彇鍒版墍鏈塨閫夐」
-                options_b = self.get_eles(Answer.options_b)
-                if len(options_b) < 4:
-                    continue
-                number_b = random.randint(0, 3)
                 options_b[number_b].click()
-            except:
-                pass
+                current += 1
+                continue
 
-            # 鎻愪氦鎸夐挳瀛樺湪鍒欑偣鍑�
-            if self.submit_btn_is_display():
-                self.click_js(Answer.submit_btn)
-                # 鏁版嵁鏄惁涓婁紶瀹屾垚
-                if self.upload_is_success():
-                    return True
-                return False
+        time.sleep(3)
+        # 鐐瑰嚮鎻愪氦鎸夐挳
+        self.click(self.elements.submit_btn, 10)
 
     def upload_is_success(self):
         """
@@ -54,7 +50,7 @@
         i = 0
         while i < 60:
             try:
-                self.get_ele(Answer.upload_success_title, timeout=10)
+                self.get_ele(self.elements.upload_success_title, timeout=10)
                 return True
             except TimeoutException:
                 i += 1
@@ -67,7 +63,7 @@
         :return:
         """
         try:
-            button = self.get_ele(Answer.submit_btn)
+            button = self.get_ele(self.elements.submit_btn)
             if button.is_enabled():
                 return True
             else:
@@ -82,7 +78,7 @@
         """
         try:
             # 鐐瑰嚮缁х画娴嬭瘯鎸夐挳
-            button = self.get_ele(Answer.continue_testing_btn)
+            button = self.get_ele(self.elements.continue_testing_btn)
             if button.is_enabled():
                 return True
             else:
@@ -97,7 +93,7 @@
         """
         try:
             # 鑾峰彇鏍囬
-            self.get_element_wait(Answer.title)
+            self.get_element_wait(self.elements.title)
             return True
         except TimeoutException:
             return False
@@ -110,7 +106,7 @@
         i = 0
         while i < 10:
             try:
-                self.get_ele(Answer.loading_text)
+                self.get_ele(self.elements.loading_text)
                 i += 1
                 time.sleep(1)
             except:
@@ -123,4 +119,4 @@
         寮�濮嬫祴璇曟寜閽�
         :return:
         """
-        self.click_wait(Answer.start_btn)
+        self.click_wait(self.elements.start_btn)

--
Gitblit v1.9.1