본문 바로가기
Study/⚙️ 자동화

[자동화] 동적인 값을 텍스트 추출하는 방법

by 둘 리 2025. 2. 1.

 

 

 

Selenium 자동화: 동적으로 업데이트되는 값 추출 방법

Selenium을 활용해 웹 자동화 테스트를 진행할 때, 종종 동적으로 변하는 값(예: 입력 필드, 검색어 제안 리스트)을 추출해야 할 때가 있습니다.

 

일반적인 방식으로는 .text 메서드를 사용해 텍스트를 가져옵니다.

하지만 .text는 종종 동적으로 업데이트되는 값을 제대로 불러오지 못할 때가 있습니다.

 

 

 

 

 

문제 상황

print(driver.find_element(By.ID, "autosuggest").text)
 

위 코드로 값이 제대로 출력되지 않는 경우가 발생할 수 있습니다.

동적으로 변경된 값이 요소의 속성으로 저장될 때는 .text가 비어있는 경우가 많기 때문입니다.

 

 

 

 

 

해결 방법: .get_attribute() 활용

동적 값이 저장된 속성을 직접 읽어오는 방법이 필요합니다.

print(driver.find_element(By.ID, "autosuggest").get_attribute("value"))

 

이 방식은 입력 필드에 실시간으로 업데이트된 값을 정확히 가져올 수 있습니다.

 

 

 

 

 

동적인 값 검증

테스트 시 입력 값 검증을 위해 사용하는 코드

assert driver.find_element(By.ID, "autosuggest").get_attribute("value") == "India"

 

  • 만약 값이 "India"와 일치한다면 테스트 통과.
  • 값이 일치하지 않으면 AssertionError가 발생하며 즉시 테스트 실패.
  • 이로 인해 버그를 빠르게 탐지할 수 있다.

 

 

 

 

 

결론

  • 동적 값 추출 시 get_attribute("value") 사용이 필수적.
  • 자동화 테스트에서 값 검증은 안정적인 시스템 유지에 도움을 준다.