From 3b84cce1ee43215b9f398148fda19f4b1025856b Mon Sep 17 00:00:00 2001 From: yj <2077506045@qq.com> Date: 星期三, 24 七月 2024 17:46:00 +0800 Subject: [PATCH] 测评系统自动测试 --- po/vaq_answer_page.py | 80 +++++++++++++++++++-------------------- 1 files changed, 39 insertions(+), 41 deletions(-) diff --git a/po/vaq_answer_page.py b/po/vaq_answer_page.py index 57d6aca..9d5314e 100644 --- a/po/vaq_answer_page.py +++ b/po/vaq_answer_page.py @@ -1,10 +1,11 @@ import random from base.base_page import BasePage -from elements.vaq_answer_elements import VAQAnswerElements as Answer +from elements.vaq_answer_elements import VAQAnswerElements from selenium.common.exceptions import * from selenium.webdriver.common.by import By import time +import re class VAQAnswerPage(BasePage): @@ -13,49 +14,46 @@ """ loading_count = 0 + elements = VAQAnswerElements + + slice_count = 9 + def answer(self): - # 鏆傚仠3绉� - # 棰勯�夊浘鐗� - # 鑾峰彇鍒版墍鏈夊浘鐗囬�夐」 - pre_pictures = self.get_elements_wait(Answer.picture) - for picture in pre_pictures: - # 闅忔満1鍒�3 - number = random.randint(1, 3) - # 鎷兼帴瑕佺偣鍑荤殑鎸夐挳鐨勫畾浣� - btn_loc = (By.XPATH, "div[3]/div[" + str(number) + "]") - # 鐐瑰嚮鎸夐挳 - self.get_element_in(picture, btn_loc).click() - time.sleep(0.1) - # 鐐瑰嚮涓嬩竴姝ユ寜閽� - self.click(Answer.next_btn) - time.sleep(1) - + time.sleep(3) # 鐐瑰嚮寮�濮嬫祴璇� - self.click(Answer.start_btn) + self.click(self.elements.start_btn) + time.sleep(2) + # 鐐瑰嚮缁х画娴嬭瘯 + self.click(self.elements.start_btn) - # 缁嗚嚧鍒嗙被鍥剧墖 - # 姣忎釜姝ラ閫夋嫨鍥剧墖鐨勬暟閲� - step_picture = [2, 2, 4, 4, 7, 7, 10, 10, 0] - i = 0 - for num in step_picture: - for k in range(0, num): - # 鑾峰彇鍒板浘鐗� - picture = self.get_elements_wait(Answer.picture)[0] - # 鎷兼帴瑕佺偣鍑荤殑鎸夐挳鐨勫畾浣� - btn_loc = (By.XPATH, "div[2]/div[1]/img") - # 鐐瑰嚮鎸夐挳 - btn = self.get_element_in(picture, btn_loc) - self.click_element_js(btn) - i += 1 - # 鐐瑰嚮涓嬩竴姝ユ寜閽� - self.click(Answer.next_btn) - # 鐐瑰嚮鎻愪氦鎸夐挳 - self.click_wait(Answer.submit_btn) - # 鏁版嵁鏄惁涓婁紶瀹屾垚 - time.sleep(10) - if self.upload_is_success(): - return True - return False + pre_pictures = self.get_eles(self.elements.pre_picture_btn, 10) + + for pre_picture in pre_pictures: + pre_picture.click() + time.sleep(0.2) + + # 鐐瑰嚮涓嬩竴姝� + self.click(self.elements.start_btn) + + time.sleep(1) + for i in range(0, self.slice_count): + # 鑾峰彇褰撳墠鎵�闇�鍥剧墖鏁伴噺鐨勬枃瀛� + picture_count_text = self.get_ele(self.elements.current_require_picture_count) + pictures = self.get_eles(self.elements.picture_btn, 10) + match = re.search(r"(\d+) / (\d+)", picture_count_text.text) + total = int(match.group(2)) + if (i + 1) != self.slice_count: + for k in range(0, total): + self.driver.execute_script("arguments[0].click();", pictures[k]) + time.sleep(0.2) + if i == 0: + self.click(self.elements.start_btn) + else: + self.click(self.elements.next_btn) + time.sleep(1) + time.sleep(2) + # 鎻愪氦 + self.click(self.elements.submit_btn) def upload_is_success(self): """ -- Gitblit v1.9.1