From edabe2bff5e3f6927a6b96c833b1ae6a50b09010 Mon Sep 17 00:00:00 2001 From: jonghyeokFF Date: Wed, 6 May 2026 23:26:26 +0900 Subject: [PATCH] =?UTF-8?q?feat(lounge):=20=EB=9D=BC=EC=9A=B4=EC=A7=80=20?= =?UTF-8?q?=ED=8E=98=EC=9D=B4=EC=A7=80=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 라운지 탭 진입, 베네핏/커뮤니티/이벤트 탭 순서 클릭 구현 Co-Authored-By: Claude Sonnet 4.6 --- fastfive-auto-app-dev/pages/lounge_page.py | 59 ++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 fastfive-auto-app-dev/pages/lounge_page.py diff --git a/fastfive-auto-app-dev/pages/lounge_page.py b/fastfive-auto-app-dev/pages/lounge_page.py new file mode 100644 index 0000000..36c197a --- /dev/null +++ b/fastfive-auto-app-dev/pages/lounge_page.py @@ -0,0 +1,59 @@ +from selenium.webdriver.common.by import By +from .base_page import BasePage + + +class LoungePage(BasePage): + ANDROID = { + 'lounge_tab': (By.XPATH, '//*[@content-desc="라운지" or @text="라운지"]'), + 'tab_benefit': (By.XPATH, '//*[@text="베네핏"]'), + 'tab_community': (By.XPATH, '//*[@text="커뮤니티"]'), + 'tab_event': (By.XPATH, '//*[@text="이벤트"]'), + } + + IOS = { + 'lounge_tab': (By.XPATH, '//XCUIElementTypeButton[contains(@label, "라운지")]'), + 'tab_benefit': (By.XPATH, '//XCUIElementTypeOther[@name="베네핏"]'), + 'tab_community': (By.XPATH, '//XCUIElementTypeOther[@name="커뮤니티"]'), + 'tab_event': (By.XPATH, '//XCUIElementTypeOther[@name="이벤트"]'), + } + + def get_selector(self, key): + return self.ANDROID[key] if self.is_android() else self.IOS[key] + + def go_to_lounge_tab(self): + self.click(self.get_selector('lounge_tab')) + print("라운지 탭 클릭") + self.wait_seconds(2) + + def _click_top_tab(self, key, name): + if self.is_ios(): + element = self.find_element(self.get_selector(key)) + element.click() + else: + self.click(self.get_selector(key)) + print(f"{name} 탭 클릭") + self.wait_seconds(2) + + def click_benefit_tab(self): + self._click_top_tab('tab_benefit', '베네핏') + + def click_community_tab(self): + self._click_top_tab('tab_community', '커뮤니티') + + def click_event_tab(self): + self._click_top_tab('tab_event', '이벤트') + + def full_lounge_flow(self): + self.go_to_lounge_tab() + self.click_benefit_tab() + self.swipe_up() + self.wait_seconds(1) + self.click_community_tab() + self.swipe_up() + self.wait_seconds(1) + self.click_event_tab() + self.swipe_up() + self.wait_seconds(1) + self.click_benefit_tab() + print("✅ 라운지 탭 테스트 완료") + return True