본문 바로가기

전체 글28

[Playwright] 내 자동화 코드를 정석 POM 구조로 리팩토링해보기 (1) — 방향성 편 요즘 직장을 다니면서 퇴근 후 저녁 시간을 활용해 자동화 테스트에 대해 공부해보려고 해요. (현 직장은 자동화 테스트 업무와는 관련이 없습니다! 하하...) 거창하게 시작하면 금방 지치기 마련이라, 하루에 30분에서 1시간 정도만 투자해서 가볍지만 꾸준하게 기록을 남기는 걸 목표로 잡았습니다. 첫날인 오늘은 코드를 바로 수정하기보다는, 이전에 작성했던 코드 구조를 분석하고 앞으로 어떤 방향으로 고쳐나갈지 '설계도'를 그리는 시간을 가져봤어요. 사실 예전 직장에서 자동화 업무를 할 때는 솔직히 몸도 마음도 참 힘들고 지치는 시기가 많았습니다. 스크립트 맨날 꼬이고, 에러 터질 때마다 스트레스도 엄청 받았었거든요. 근데 웃긴 건, 시간이 지나고 보니까 그 고생해가면서 코드 짜고 테스트 패스시켰을 때 느꼈던 .. 2026. 5. 20.
[자동화] Set ✅ set(집합) 이란? set은 중복을 허용하지 않고, 순서가 없는 데이터 구조.파이썬의 set은 내부적으로 해시 테이블(Hash Table) 을 사용해서 검색 속도가 매우 빠른 자료구조이다. # set 생성my_set = {1, 2, 3, 4, 5}print(my_set) # {1, 2, 3, 4, 5} 🔹 특징중복된 값 자동 제거요소의 순서가 없음in 연산자가 빠름 (검색 속도 O(1))     ✅ set과 list의 차이점특징setlist중복 허용❌ 안 됨✅ 됨순서 보장❌ 안 됨✅ 됨검색 속도🚀 빠름 (O(1))🐢 느림 (O(n))추가/삭제 속도🚀 빠름 (O(1))🐢 느림 (O(n)) 🔹 예제: set은 중복을 자동으로 제거my_list = [1, 2, 2, 3, 4, 4, 5]my_.. 2025. 2. 6.
[자동화] checkbox 다수의 value 값을 자동화 - List, Dictionary, Set 체크박스의 옵션이 여러 개 있을 경우 자동화 코드를 어떤 식으로 구현해야 할지 고민해 보는 시간을 가졌다.옵션이 많아질수록 if ~ else 문을 사용한 코드가 한 줄씩 늘어나기 때문에 가독성이 좋지 않았다.그래서 가독성과 코드 효율성을 높이는 코드를 만들어가보려고 한다.     ✅ 방법 1: 체크해야 할 value 목록을 List로 관리체크할 값이 많아도 target_values List만 수정하면 된다.from selenium import webdriverfrom selenium.webdriver.common.by import Bydriver = webdriver.Chrome()driver.get("https://example.com")# 체크할 값 리스트target_values = ["option2.. 2025. 2. 3.
[자동화] 동적인 값을 텍스트 추출하는 방법 Selenium 자동화: 동적으로 업데이트되는 값 추출 방법Selenium을 활용해 웹 자동화 테스트를 진행할 때, 종종 동적으로 변하는 값(예: 입력 필드, 검색어 제안 리스트)을 추출해야 할 때가 있습니다. 일반적인 방식으로는 .text 메서드를 사용해 텍스트를 가져옵니다.하지만 .text는 종종 동적으로 업데이트되는 값을 제대로 불러오지 못할 때가 있습니다.     문제 상황print(driver.find_element(By.ID, "autosuggest").text) 위 코드로 값이 제대로 출력되지 않는 경우가 발생할 수 있습니다.동적으로 변경된 값이 요소의 속성으로 저장될 때는 .text가 비어있는 경우가 많기 때문입니다.     해결 방법: .get_attribute() 활용동적 값이 저장된 .. 2025. 2. 1.
[자동화] chrome webdriver, Selenium 사용해보기 다운로드한 chrome webdriver과 selenium, python을 이용해서 자동화를 시작해보려고 합니다.- VS Code- python- selenium- chrome webdriver     Selenium이란?Selenium은 웹 애플리케이션을 자동으로 테스트할 수 있도록 도와주는 오픈 소스 도구.다양한 프로그래밍 언어를 지원하며, 그 중에서도 Python이 많이 사용되고 있어요. Selenium을 사용하면 웹 페이지의 요소를 쉽게 찾고, 상호작용할 수 있어요. 예를 들어, 버튼 클릭, 텍스트 입력, 페이지 이동 등을 자동으로 수행할 수 있죠.     Python과 Selenium의 조합Python은 간결하고 읽기 쉬운 문법 덕분에 많은 개발자들에게 사랑받고 있어요. Selenium과 함께 .. 2025. 1. 30.
[자동화] chrome webdriver download 크롬 브라우저 자동화 테스트를 진행하려면 크롬 웹드라이버가 꼭 필요한데요. 오늘은 크롬 웹드라이버가 무엇인지부터 다운로드 방법까지 자세히 알아보겠습니다.     크롬 웹드라이버란?크롬 웹드라이버는 구글 크롬 브라우저를 자동화하기 위한 도구입니다. 주로 Selenium 같은 테스트 프레임워크와 함께 사용되며, 웹 애플리케이션의 기능을 검증하거나 반복적인 테스트 작업을 자동화하는 데 활용됩니다.     크롬 웹드라이버 다운로드 방법크롬 웹드라이버를 다운로드하려면 아래 절차를 따르면 됩니다.  1. 구글 검색먼저 구글에 "chrome webdriver download"를 검색하고, 검색 결과에서 공식 사이트로 이동합니다.   2.  테스트용 Chrome 사용 가능 여부 확인 공식 사이트에서 "테스트용 Chro.. 2025. 1. 28.